Skip to content

API documentation of Agoric SDK / Exports / @agoric/zoe / src/zoeService/utils

Module: src/zoeService/utils ​

Table of contents ​

References ​

Type Aliases ​

Variables ​

References ​

Installation ​

Re-exports Installation


InstallationStart ​

Re-exports InstallationStart

Type Aliases ​

AdminFacet ​

Ƭ AdminFacet<SF>: Object

Type parameters ​

NameType
SFextends ContractStartFunction

Type declaration ​

NameType
getVatShutdownPromise() => Promise<any>
restartContractParameters<SF>[1] extends undefined ? () => Promise<VatUpgradeResults> : (newPrivateArgs: Parameters<SF>[1]) => Promise<VatUpgradeResults>
upgradeContractParameters<SF>[1] extends undefined ? (contractBundleId: string) => Promise<VatUpgradeResults> : (contractBundleId: string, newPrivateArgs: Parameters<SF>[1]) => Promise<VatUpgradeResults>

Defined in ​

zoe/src/zoeService/utils.d.ts:39


ContractFacet ​

Ƭ ContractFacet<T>: { readonly [P in keyof T]: T[P] extends Callable ? T[P] : never }

Type parameters ​

NameType
Textends Object = {}

Defined in ​

zoe/src/zoeService/utils.d.ts:10


ContractOf ​

Ƭ ContractOf<S>: StartParams<S> & StartResult<S>

Convenience record for contract start function, merging its result with params.

Type parameters ​

Name
S

Defined in ​

zoe/src/zoeService/utils.d.ts:71


ContractStartFunction ​

Ƭ ContractStartFunction: (zcf?: ZCF, privateArgs?: {}, baggage?: Baggage) => ERef<{ creatorFacet?: {} ; publicFacet?: {} }>

Type declaration ​

▸ (zcf?, privateArgs?, baggage?): ERef<{ creatorFacet?: {} ; publicFacet?: {} }>

Parameters ​
NameType
zcf?ZCF
privateArgs?Object
baggage?Baggage
Returns ​

ERef<{ creatorFacet?: {} ; publicFacet?: {} }>

Defined in ​

zoe/src/zoeService/utils.d.ts:33


GetPublicFacet ​

Ƭ GetPublicFacet: <SF>(instance: Instance<SF> | PromiseLike<Instance<SF>>) => Promise<StartResult<SF>["publicFacet"]>

Type declaration ​

▸ <SF>(instance): Promise<StartResult<SF>["publicFacet"]>

Type parameters ​
Name
SF
Parameters ​
NameType
instanceInstance<SF> | PromiseLike<Instance<SF>>
Returns ​

Promise<StartResult<SF>["publicFacet"]>

Defined in ​

zoe/src/zoeService/utils.d.ts:124


GetTerms ​

Ƭ GetTerms: <SF>(instance: Instance<SF>) => Promise<StartParams<SF>["terms"] extends {} ? StartParams<SF>["terms"] : any>

Type declaration ​

▸ <SF>(instance): Promise<StartParams<SF>["terms"] extends {} ? StartParams<SF>["terms"] : any>

Type parameters ​
Name
SF
Parameters ​
NameType
instanceInstance<SF>
Returns ​

Promise<StartParams<SF>["terms"] extends {} ? StartParams<SF>["terms"] : any>

Defined in ​

zoe/src/zoeService/utils.d.ts:128


Instance ​

Ƭ Instance<SF>: Handle<"Instance"> & { [StartFunction]: SF }

Type parameters ​

Name
SF

Defined in ​

zoe/src/zoeService/utils.d.ts:24


SourceBundle ​

Ƭ SourceBundle: Record<string, any>

Defined in ​

zoe/src/zoeService/utils.d.ts:8


StartContractInstance ​

Ƭ StartContractInstance<C>: (installation: Installation<C>, issuerKeywordRecord?: MapStore, terms?: object, privateArgs?: object) => Promise<{ adminFacet: AdminFacet<any> ; creatorFacet: C["creatorFacet"] ; creatorInvitation: C["creatorInvitation"] ; instance: Instance ; publicFacet: C["publicFacet"] }>

Type parameters ​

Name
C

Type declaration ​

▸ (installation, issuerKeywordRecord?, terms?, privateArgs?): Promise<{ adminFacet: AdminFacet<any> ; creatorFacet: C["creatorFacet"] ; creatorInvitation: C["creatorInvitation"] ; instance: Instance ; publicFacet: C["publicFacet"] }>

Parameters ​
NameType
installationInstallation<C>
issuerKeywordRecord?MapStore
terms?object
privateArgs?object
Returns ​

Promise<{ adminFacet: AdminFacet<any> ; creatorFacet: C["creatorFacet"] ; creatorInvitation: C["creatorInvitation"] ; instance: Instance ; publicFacet: C["publicFacet"] }>

Defined in ​

zoe/src/zoeService/utils.d.ts:73


StartInstance ​

Ƭ StartInstance: <SF>(installation: Installation<SF> | PromiseLike<Installation<SF>>, issuerKeywordRecord?: MapStore, terms?: Omit<StartParams<SF>["terms"], "brands" | "issuers">, privateArgs?: Parameters<SF>[1], label?: string) => Promise<StartedInstanceKit<SF>>

Zoe is long-lived. We can use Zoe to create smart contract instances by specifying a particular contract installation to use, as well as the terms of the contract. The terms.issuers is a record mapping string names (keywords) to issuers, such as { Asset: simoleanIssuer}. (Note that the keywords must begin with a capital letter and must be ASCII identifiers.) Parties to the contract will use the keywords to index their proposal and their payments.

The custom terms are the arguments to the contract, such as the number of bids an auction will wait for before closing. Custom terms are up to the discretion of the smart contract. We get back the creator facet, public facet, and creator invitation as defined by the contract.

Type declaration ​

▸ <SF>(installation, issuerKeywordRecord?, terms?, privateArgs?, label?): Promise<StartedInstanceKit<SF>>

Type parameters ​
Name
SF
Parameters ​
NameType
installationInstallation<SF> | PromiseLike<Installation<SF>>
issuerKeywordRecord?MapStore
terms?Omit<StartParams<SF>["terms"], "brands" | "issuers">
privateArgs?Parameters<SF>[1]
label?string
Returns ​

Promise<StartedInstanceKit<SF>>

Defined in ​

zoe/src/zoeService/utils.d.ts:115


StartParams ​

Ƭ StartParams<SF>: SF extends ContractStartFunction ? Parameters<SF>[1] extends undefined ? { terms: ReturnType<Parameters<SF>[0]["getTerms"]> } : { privateArgs: Parameters<SF>[1] ; terms: ReturnType<Parameters<SF>[0]["getTerms"]> } : never

Type parameters ​

Name
SF

Defined in ​

zoe/src/zoeService/utils.d.ts:53


StartResult ​

Ƭ StartResult<S>: S extends (...args: any) => Promise<infer U> ? U : ReturnType<S>

Type parameters ​

Name
S

Defined in ​

zoe/src/zoeService/utils.d.ts:64


StartedInstanceKit ​

Ƭ StartedInstanceKit<SF>: { adminFacet: AdminFacet<SF> ; creatorFacet: {} ; instance: Instance<SF> ; publicFacet: {} } & SF extends ContractStartFunction ? Awaited<ReturnType<SF>> : { creatorFacet: any ; publicFacet: any }

The result of startInstance

Type parameters ​

Name
SF

Defined in ​

zoe/src/zoeService/utils.d.ts:87

Variables ​

StartFunction ​

• Const StartFunction: unique symbol

Installation of a contract, typed by its start function.

Defined in ​

zoe/src/zoeService/utils.d.ts:17