StartInstance: (<SF>(installation: Installation<SF> | PromiseLike<Installation<SF>>, issuerKeywordRecord?: Record<Keyword, Issuer<any>>, 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.