DeployedContract
Defined in: src/Contract.ts:387
A deployed contract — connected to the network, ready for calls.
Created from LoadedContract.deploy() or LoadedContract.join(). Has a
known address and all operational methods.
Since
0.7.0
Type Parameters
TLedger
TLedger = unknown
The ledger state type (inferred from module)
TCircuits
TCircuits extends string = string
Union of circuit names (inferred from module)
TActions
TActions extends Record<string, (…args) => Promise<CallResult>> = Record<string, (…args) => Promise<CallResult>>
Properties
actions
readonlyactions:TActions
Defined in: src/Contract.ts:410
Type-safe action methods — each circuit is a direct method with inferred parameter types.
Example
await contract.actions.increment(5n);Since
0.8.0
address
readonlyaddress:string
Defined in: src/Contract.ts:394
The deployed contract address (always known).
effect
readonlyeffect:object
Defined in: src/Contract.ts:469
Effect versions of deployed contract methods
actions
readonlyactions:ToEffectActions<TActions>
Type-safe Effect action methods.
call()
call(
action, …args):Effect<CallResult,ContractError>
Parameters
action
TCircuits
args
…unknown[]
Returns
Effect<CallResult, ContractError>
getState()
getState():
Effect<unknown,ContractError>
Returns
Effect<unknown, ContractError>
getStateAt()
getStateAt(
blockHeight):Effect<unknown,ContractError>
Parameters
blockHeight
number
Returns
Effect<unknown, ContractError>
ledgerState()
ledgerState():
Effect<TLedger,ContractError>
Returns
Effect<TLedger, ContractError>
ledgerStateAt()
ledgerStateAt(
blockHeight):Effect<TLedger,ContractError>
Parameters
blockHeight
number
Returns
Effect<TLedger, ContractError>
watchRawState()
watchRawState(
options?):Stream<unknown,ContractError>
Watch raw state as an Effect.Stream.
Parameters
options?
Returns
Stream<unknown, ContractError>
watchState()
watchState(
options?):Stream<TLedger,ContractError>
Watch parsed state as an Effect.Stream.
Parameters
options?
Returns
Stream<TLedger, ContractError>
module
readonlymodule:LoadedContractModule<TLedger,TCircuits>
Defined in: src/Contract.ts:396
The loaded contract module
providers
readonlyproviders:ContractProviders
Defined in: src/Contract.ts:398
Contract providers (for advanced use)
Methods
call()
call(
action, …args):Promise<CallResult>
Defined in: src/Contract.ts:417
Call a contract action by name (untyped fallback).
Prefer contract.actions.actionName(...) for type-safe calls.
Parameters
action
TCircuits
args
…unknown[]
Returns
Promise<CallResult>
getState()
getState():
Promise<unknown>
Defined in: src/Contract.ts:420
Get raw contract state.
Returns
Promise<unknown>
getStateAt()
getStateAt(
blockHeight):Promise<unknown>
Defined in: src/Contract.ts:423
Get raw contract state at a specific block height.
Parameters
blockHeight
number
Returns
Promise<unknown>
ledgerState()
ledgerState():
Promise<TLedger>
Defined in: src/Contract.ts:426
Get parsed ledger state.
Returns
Promise<TLedger>
ledgerStateAt()
ledgerStateAt(
blockHeight):Promise<TLedger>
Defined in: src/Contract.ts:429
Get parsed ledger state at a specific block height.
Parameters
blockHeight
number
Returns
Promise<TLedger>
onRawStateChange()
onRawStateChange(
callback,options?):Unsubscribe
Defined in: src/Contract.ts:463
Watch for raw state changes (callback).
Parameters
callback
(state) => void
options?
Returns
onStateChange()
onStateChange(
callback,options?):Unsubscribe
Defined in: src/Contract.ts:445
Watch for parsed ledger state changes (callback style). Returns an unsubscribe function.
Parameters
callback
(state) => void
options?
Returns
Example
const unsub = contract.onStateChange((state) => { console.log(state.counter);});// later: unsub();Since
0.9.0
watchRawState()
watchRawState(
options?):AsyncIterableIterator<unknown>
Defined in: src/Contract.ts:466
Watch for raw state changes (async iterator).
Parameters
options?
Returns
AsyncIterableIterator<unknown>
watchState()
watchState(
options?):AsyncIterableIterator<TLedger>
Defined in: src/Contract.ts:460
Watch for parsed ledger state changes (async iterator style).
Parameters
options?
Returns
AsyncIterableIterator<TLedger>
Example
for await (const state of contract.watchState()) { console.log(state.counter); if (state.counter > 10n) break;}Since
0.9.0