Skip to content
Next — unreleased

Defined in: packages/sage/src/internal/c4/claim-stake.ts:112

Fully translated ClaimStakeInstance account data before registry joins.

declare const stake: ClaimStakeAccountData;
console.log(stake.ownerProfile, stake.body);

readonly body: Address;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:116

readonly buildingDefinitionSeqId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:119

readonly buildings: readonly ClaimStakeBuildingData[];

Defined in: packages/sage/src/internal/c4/claim-stake.ts:129

readonly claimStakeDefinitionId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:117

readonly claimStakeDefinitionSeqId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:118

readonly constructionProgressAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:123

readonly constructionRemainingSeconds: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:122

readonly game: Address;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:115

readonly lastRentAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:121

readonly neededCrew: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:128

Crew the stake committed, on a version-1 instance. A version-0 instance stores an unverified nominal value instead, and cannot be finalized or deconstructed.

readonly ownerProfile: Address;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:114

readonly production: {
cargoPod: ClaimStakeCargoPodData;
lastTickAtUnixSeconds: bigint;
netResources: readonly ClaimStakeResourceRateData[];
resourceCapacityRaw: bigint;
};

Defined in: packages/sage/src/internal/c4/claim-stake.ts:131

readonly cargoPod: ClaimStakeCargoPodData;
readonly lastTickAtUnixSeconds: bigint;
readonly netResources: readonly ClaimStakeResourceRateData[];
readonly resourceCapacityRaw: bigint;

readonly rentBalanceRaw: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:124

readonly state: ClaimStakeStateData;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:130

readonly systemSeqId: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:120

readonly version: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:113


Defined in: packages/sage/src/internal/c4/claim-stake.ts:43

One translated building quantity on a Claim Stake.

declare const building: ClaimStakeBuildingData;
console.log(building.buildingId, building.quantity);

readonly buildingId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:44

readonly quantity: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:45


Defined in: packages/sage/src/internal/c4/claim-stake.ts:55

One unresolved resource quantity in the nested production CargoPod.

declare const amount: ClaimStakeCargoAmountData;
console.log(amount.cargoId, amount.amount);

readonly amount: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:57

readonly cargoId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:56


Defined in: packages/sage/src/internal/c4/claim-stake.ts:67

The translated nested production CargoPod.

declare const pod: ClaimStakeCargoPodData;
console.log(pod.storageCost, pod.amounts);

readonly amounts: readonly ClaimStakeCargoAmountData[];

Defined in: packages/sage/src/internal/c4/claim-stake.ts:70

readonly seqId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:68

readonly storageCost: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:69


Defined in: packages/sage/src/internal/claim-stake.ts:19

One registry-resolved Claim Stake net production or consumption rate.

declare const rate: ClaimStakeResourceRate;
console.log(rate.name, rate.ratePerSecond);

readonly categoryId: number;

Defined in: packages/sage/src/registry/index.ts:119

CargoDefinitionSummary.categoryId

readonly id: number;

Defined in: packages/sage/src/registry/index.ts:120

CargoDefinitionSummary.id

readonly mint: Address;

Defined in: packages/sage/src/registry/index.ts:121

CargoDefinitionSummary.mint

readonly name: string;

Defined in: packages/sage/src/registry/index.ts:122

CargoDefinitionSummary.name

readonly ratePerSecond: number;

Defined in: packages/sage/src/internal/claim-stake.ts:20

readonly ratePerSecondRaw: bigint;

Defined in: packages/sage/src/internal/claim-stake.ts:21

readonly storageCost: number;

Defined in: packages/sage/src/registry/index.ts:127

Encoded storage cost with 8 fractional bits: 256 means one whole storage unit. For a nonnegative bigint quantity, use (quantity * BigInt(storageCost) + 255n) / 256n. Round each transfer row up before summing; Fleet capacities and pod usage are whole units.

CargoDefinitionSummary.storageCost


Defined in: packages/sage/src/internal/c4/claim-stake.ts:80

One unresolved net resource production rate.

declare const resource: ClaimStakeResourceRateData;
console.log(resource.ratePerSecond);

readonly cargoId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:81

readonly ratePerSecond: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:82

readonly ratePerSecondRaw: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:83


Defined in: packages/sage/src/internal/claim-stake.ts:31

Registry-resolved Claim Stake resource state.

declare const resources: ClaimStakeResources;
console.log(resources.capacity.remainingRaw);

readonly capacity: CargoCapacity;

Defined in: packages/sage/src/internal/claim-stake.ts:33

readonly inventory: CargoPodInventory;

Defined in: packages/sage/src/internal/claim-stake.ts:32

readonly lastTickAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/claim-stake.ts:35

readonly netProduction: readonly ClaimStakeResourceRate[];

Defined in: packages/sage/src/internal/claim-stake.ts:34


Defined in: packages/sage/src/claim-stakes/index.ts:72

Immutable, translated Claim Stake snapshot.

declare const stake: ClaimStakeSnapshot;
console.log(stake.state.kind, stake.resources.capacity.remainingRaw);

readonly address: Address;

Defined in: packages/sage/src/claim-stakes/index.ts:77

readonly body: EntityRef<"celestialBody">;

Defined in: packages/sage/src/claim-stakes/index.ts:78

readonly buildingDefinitionSeqId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:119

ClaimStakeAccountData.buildingDefinitionSeqId

readonly buildings: readonly ClaimStakeBuildingData[];

Defined in: packages/sage/src/internal/c4/claim-stake.ts:129

ClaimStakeAccountData.buildings

readonly claimStakeDefinitionId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:117

ClaimStakeAccountData.claimStakeDefinitionId

readonly claimStakeDefinitionSeqId: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:118

ClaimStakeAccountData.claimStakeDefinitionSeqId

readonly constructionProgressAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:123

ClaimStakeAccountData.constructionProgressAtUnixSeconds

readonly constructionRemainingSeconds: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:122

ClaimStakeAccountData.constructionRemainingSeconds

readonly game: Address;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:115

ClaimStakeAccountData.game

readonly kind: "claimStakeInstance";

Defined in: packages/sage/src/claim-stakes/index.ts:76

readonly lastRentAtUnixSeconds: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:121

ClaimStakeAccountData.lastRentAtUnixSeconds

readonly neededCrew: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:128

Crew the stake committed, on a version-1 instance. A version-0 instance stores an unverified nominal value instead, and cannot be finalized or deconstructed.

ClaimStakeAccountData.neededCrew

readonly ownerProfile: EntityRef<"profile">;

Defined in: packages/sage/src/claim-stakes/index.ts:79

readonly rentBalanceRaw: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:124

ClaimStakeAccountData.rentBalanceRaw

readonly resources: ClaimStakeResources;

Defined in: packages/sage/src/claim-stakes/index.ts:80

readonly state: ClaimStakeStateData;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:130

ClaimStakeAccountData.state

readonly systemSeqId: bigint;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:120

ClaimStakeAccountData.systemSeqId

readonly version: number;

Defined in: packages/sage/src/internal/c4/claim-stake.ts:113

ClaimStakeAccountData.version

toJSON(): unknown;

Defined in: packages/sage/src/claim-stakes/index.ts:81

unknown

type ClaimStakeBuildingDefinition = GameClaimStakeBuildingDefinitionData;

Defined in: packages/sage/src/claim-stakes/index.ts:313

Immutable Building definition for Claim Stakes, not placed production state. Construction duration is exact signed seconds; crewSlots and power preserve signed on-chain integers. XP is U16F16. Production rates are I54F10 and extraction rates U54F10 (raw / 1024); no time denominator or gameplay formula is inferred. Raw capacity/quantities and fixed-point raw values remain bigint. JSON converts bigint to decimal strings. Hab-only fields are not included.

declare const definition: ClaimStakeBuildingDefinition;
console.log(definition.power, definition.netResourceProduction);

type ClaimStakeDefinition = GameClaimStakeDefinitionData;

Defined in: packages/sage/src/claim-stakes/index.ts:268

Immutable Claim Stake container definition, distinct from a placed instance. Both multipliers are dimensionless U8F56 values: raw / 2^56 gives value. Exact raw bigint supports arithmetic; JSON serializes raw as decimal strings.

declare const definition: ClaimStakeDefinition;
console.log(definition.rentMultiplier.raw, definition.placementFeeMultiplier.value);

type ClaimStakeDiscoveryOptions = Omit<DiscoveryRequest, "filters" | "strategy">;

Defined in: packages/sage/src/claim-stakes/index.ts:60

Options supported by targeted Claim Stake discovery.

const options: ClaimStakeDiscoveryOptions = { commitment: 'confirmed' };

type ClaimStakeStateData =
| {
kind: "active";
}
| {
buildings: readonly ClaimStakeBuildingData[];
kind: "design";
sequenceId: number;
}
| {
deactivatedAtUnixSeconds: bigint;
kind: "deactivated";
};

Defined in: packages/sage/src/internal/c4/claim-stake.ts:93

Stable translated Claim Stake lifecycle state.

declare const state: ClaimStakeStateData;
console.log(state.kind);

function getAllClaimStakes(context, options?): Promise<readonly ClaimStakeSnapshot[]>;

Defined in: packages/sage/src/claim-stakes/index.ts:208

Discovers all extant Claim Stake instances for the context Game. Includes active, design and deactivated states without traversing bodies or Characters. Uses the configured indexer or targeted RPC discovery, subject to context limits; excessive results reject rather than truncate. Provider freshness and per-account slots do not establish an atomic Game snapshot. Stored body references may be unresolved. Inspect provenance with readMeta.

ParameterType
contextSageContext
options?ClaimStakeDiscoveryOptions

Promise<readonly ClaimStakeSnapshot[]>

declare const ctx: SageContext;
const stakes = await getAllClaimStakes(ctx);
for (const stake of stakes) console.log(stake.address, stake.state.kind);

function getClaimStake(
context,
address,
options?): Promise<ClaimStakeSnapshot>;

Defined in: packages/sage/src/claim-stakes/index.ts:145

Reads a required Claim Stake by its signer-created account address.

ParameterType
contextSageContext
addressAddress
options?ReadOptions

Promise<ClaimStakeSnapshot>

declare const ctx: SageContext;
declare const address: Address;
const stake = await getClaimStake(ctx, address);

function getClaimStakeBuildingDefinition(context, id): Promise<GameClaimStakeBuildingDefinitionData>;

Defined in: packages/sage/src/claim-stakes/index.ts:323

Loads one Claim Stake Building definition by its Game Building table id.

ParameterType
contextSageContext
idnumber

Promise<GameClaimStakeBuildingDefinitionData>

declare const ctx: SageContext;
const building = await getClaimStakeBuildingDefinition(ctx, 2175);
console.log(building.constructionDurationSeconds);

function getClaimStakeDefinition(context, id): Promise<GameClaimStakeDefinitionData>;

Defined in: packages/sage/src/claim-stakes/index.ts:279

Loads one Claim Stake container definition by its Game table id. Loads the container catalog lazily; this does not fetch a placed instance.

ParameterType
contextSageContext
idnumber

Promise<GameClaimStakeDefinitionData>

declare const ctx: SageContext;
const definition = await getClaimStakeDefinition(ctx, 7);
console.log(definition.slots);

function getClaimStakesByBody(
context,
body,
options?): Promise<readonly ClaimStakeSnapshot[]>;

Defined in: packages/sage/src/claim-stakes/index.ts:247

Discovers Claim Stakes placed on a Celestial Body using stable targeted filters.

ParameterType
contextSageContext
bodyAddress
options?ClaimStakeDiscoveryOptions

Promise<readonly ClaimStakeSnapshot[]>

declare const ctx: SageContext;
declare const body: Address;
const stakes = await getClaimStakesByBody(ctx, body);

function getClaimStakesByProfile(
context,
profile,
options?): Promise<readonly ClaimStakeSnapshot[]>;

Defined in: packages/sage/src/claim-stakes/index.ts:227

Discovers Claim Stakes owned by a Profile using stable targeted filters. The chain records a Claim Stake’s owner as the Profile, not its Character.

ParameterType
contextSageContext
profileAddress
options?ClaimStakeDiscoveryOptions

Promise<readonly ClaimStakeSnapshot[]>

declare const ctx: SageContext;
declare const profile: Address;
const stakes = await getClaimStakesByProfile(ctx, profile);

function listClaimStakeBuildingDefinitions(context): Promise<readonly GameClaimStakeBuildingDefinitionData[]>;

Defined in: packages/sage/src/claim-stakes/index.ts:339

Lists immutable canonical Claim Stake Building definitions in table order. Shares objects with by-id catalog lookups, not with fresh planner observations.

ParameterType
contextSageContext

Promise<readonly GameClaimStakeBuildingDefinitionData[]>

declare const ctx: SageContext;
const buildings = await listClaimStakeBuildingDefinitions(ctx);
console.log(buildings.map(building => building.name));

function listClaimStakeDefinitions(context): Promise<readonly GameClaimStakeDefinitionData[]>;

Defined in: packages/sage/src/claim-stakes/index.ts:295

Lists the loaded Claim Stake container catalog as immutable canonical objects. The array is retained per section generation and shares by-id lookup objects.

ParameterType
contextSageContext

Promise<readonly GameClaimStakeDefinitionData[]>

declare const ctx: SageContext;
const definitions = await listClaimStakeDefinitions(ctx);
console.log(definitions.map(definition => definition.name));

function maybeGetClaimStake(
context,
address,
options?): Promise<
| ClaimStakeSnapshot
| undefined>;

Defined in: packages/sage/src/claim-stakes/index.ts:165

Reads an optional Claim Stake by address.

ParameterType
contextSageContext
addressAddress
options?ReadOptions

Promise< | ClaimStakeSnapshot | undefined>

declare const ctx: SageContext;
declare const address: Address;
const stake = await maybeGetClaimStake(ctx, address);