LodashFactory
Defined in: packages/store-kit/src/lodash/client.ts:279
A factory to create and deploy one or more instance of the Lodash smart contract and to create one or more app clients to interact with those (or other) app instances
Constructors
new LodashFactory()
new LodashFactory(
params
):LodashFactory
Defined in: packages/store-kit/src/lodash/client.ts:290
Creates a new instance of LodashFactory
Parameters
params
Omit
<AppFactoryParams
, "appSpec"
>
The parameters to initialise the app factory with
Returns
Properties
appFactory
readonly
appFactory:AppFactory
Defined in: packages/store-kit/src/lodash/client.ts:283
The underlying AppFactory
for when you want to have more flexibility
createTransaction
readonly
createTransaction:object
Defined in: packages/store-kit/src/lodash/client.ts:391
Create transactions for the current app
create
create:
object
Gets available create methods
create.bare()
bare: (
params
?) =>Promise
<Transaction
>
Creates a new instance of the Lodash smart contract using a bare call.
Parameters
params?
The params for the bare (raw) call
accountReferences?
(string
| Address
)[]
Any account addresses to add to the accounts array.
appReferences?
bigint
[]
The ID of any apps to load to the foreign apps array.
args?
Uint8Array
<ArrayBufferLike
>[]
Any arguments to pass to the smart contract call.
assetReferences?
bigint
[]
The ID of any assets to load to the foreign assets array.
boxReferences?
(BoxReference
| BoxIdentifier
)[]
Any boxes to load to the boxes array.
Either the name identifier (which will be set against app ID of 0
i.e.
the current app), or a box identifier with the name identifier and app ID.
deletable?
boolean
Whether or not the contract should have deploy-time permanence control set, undefined = ignore
deployTimeParams?
TealTemplateParams
Any deploy-time parameters to replace in the TEAL code
extraFee?
AlgoAmount
The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees.
extraProgramPages?
number
Number of extra pages required for the programs. Defaults to the number needed for the programs in this call if not specified. This is immutable once the app is created.
firstValidRound?
bigint
Set the first round this transaction is valid. If left undefined, the value from algod will be used.
We recommend you only set this when you intentionally want this to be some time in the future.
lastValidRound?
bigint
The last round this transaction is valid. It is recommended to use validityWindow
instead.
lease?
string
| Uint8Array
<ArrayBufferLike
>
Prevent multiple transactions with the same lease being included within the validity window.
A lease enforces a mutually exclusive transaction (useful to prevent double-posting and other scenarios).
maxFee?
AlgoAmount
Throw an error if the fee for the transaction is more than this amount; prevents overspending on fees during high congestion periods.
note?
string
| Uint8Array
<ArrayBufferLike
>
Note to attach to the transaction. Max of 1000 bytes.
onComplete?
NoOpOC
rekeyTo?
string
| Address
Change the signing key of the sender to the given address.
Warning: Please be careful with this parameter and be sure to read the official rekey guidance.
schema?
{ globalByteSlices
: number
; globalInts
: number
; localByteSlices
: number
; localInts
: number
; }
The state schema for the app. This is immutable once the app is created. By default uses the ARC32/ARC-56 spec.
schema.globalByteSlices
number
The number of byte slices saved in global state.
schema.globalInts
number
The number of integers saved in global state.
schema.localByteSlices
number
The number of byte slices saved in local state.
schema.localInts
number
The number of integers saved in local state.
sender?
string
| Address
The address of the account sending the transaction, if undefined then the app client’s defaultSender is used.
signer?
TransactionSigner
| TransactionSignerAccount
The function used to sign transaction(s); if not specified then
an attempt will be made to find a registered signer for the
given sender
or use a default signer (if configured).
staticFee?
AlgoAmount
The static transaction fee. In most cases you want to use extraFee
unless setting the fee to 0 to be covered by another transaction.
updatable?
boolean
Whether or not the contract should have deploy-time immutability control set, undefined = ignore
validityWindow?
number
| bigint
How many rounds the transaction should be valid for, if not specified then the registered default validity window will be used.
Returns
Promise
<Transaction
>
The transaction for a create call
params
readonly
params:object
Defined in: packages/store-kit/src/lodash/client.ts:355
Get parameters to create transactions (create and deploy related calls) for the current app. A good mental model for this is that these parameters represent a deferred transaction creation.
create
create:
object
Gets available create methods
create.bare()
bare: (
params
?) =>Promise
<object
&object
>
Creates a new instance of the Lodash smart contract using a bare call.
Parameters
params?
The params for the bare (raw) call
accountReferences?
(string
| Address
)[]
Any account addresses to add to the accounts array.
appReferences?
bigint
[]
The ID of any apps to load to the foreign apps array.
args?
Uint8Array
<ArrayBufferLike
>[]
Any arguments to pass to the smart contract call.
assetReferences?
bigint
[]
The ID of any assets to load to the foreign assets array.
boxReferences?
(BoxReference
| BoxIdentifier
)[]
Any boxes to load to the boxes array.
Either the name identifier (which will be set against app ID of 0
i.e.
the current app), or a box identifier with the name identifier and app ID.
deletable?
boolean
Whether or not the contract should have deploy-time permanence control set, undefined = ignore
deployTimeParams?
TealTemplateParams
Any deploy-time parameters to replace in the TEAL code
extraFee?
AlgoAmount
The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees.
extraProgramPages?
number
Number of extra pages required for the programs. Defaults to the number needed for the programs in this call if not specified. This is immutable once the app is created.
firstValidRound?
bigint
Set the first round this transaction is valid. If left undefined, the value from algod will be used.
We recommend you only set this when you intentionally want this to be some time in the future.
lastValidRound?
bigint
The last round this transaction is valid. It is recommended to use validityWindow
instead.
lease?
string
| Uint8Array
<ArrayBufferLike
>
Prevent multiple transactions with the same lease being included within the validity window.
A lease enforces a mutually exclusive transaction (useful to prevent double-posting and other scenarios).
maxFee?
AlgoAmount
Throw an error if the fee for the transaction is more than this amount; prevents overspending on fees during high congestion periods.
note?
string
| Uint8Array
<ArrayBufferLike
>
Note to attach to the transaction. Max of 1000 bytes.
onComplete?
NoOpOC
rekeyTo?
string
| Address
Change the signing key of the sender to the given address.
Warning: Please be careful with this parameter and be sure to read the official rekey guidance.
schema?
{ globalByteSlices
: number
; globalInts
: number
; localByteSlices
: number
; localInts
: number
; }
The state schema for the app. This is immutable once the app is created. By default uses the ARC32/ARC-56 spec.
schema.globalByteSlices
number
The number of byte slices saved in global state.
schema.globalInts
number
The number of integers saved in global state.
schema.localByteSlices
number
The number of byte slices saved in local state.
schema.localInts
number
The number of integers saved in local state.
sender?
string
| Address
The address of the account sending the transaction, if undefined then the app client’s defaultSender is used.
signer?
TransactionSigner
| TransactionSignerAccount
The function used to sign transaction(s); if not specified then
an attempt will be made to find a registered signer for the
given sender
or use a default signer (if configured).
staticFee?
AlgoAmount
The static transaction fee. In most cases you want to use extraFee
unless setting the fee to 0 to be covered by another transaction.
updatable?
boolean
Whether or not the contract should have deploy-time immutability control set, undefined = ignore
validityWindow?
number
| bigint
How many rounds the transaction should be valid for, if not specified then the registered default validity window will be used.
Returns
Promise
<object
& object
>
The params for a create call
deployDelete
deployDelete:
object
Gets available deployDelete methods
deployDelete.bare()
bare: (
params
?) =>object
&object
Deletes an existing instance of the Lodash smart contract using a bare call.
Parameters
params?
The params for the bare (raw) call
accountReferences?
(string
| Address
)[]
Any account addresses to add to the accounts array.
appReferences?
bigint
[]
The ID of any apps to load to the foreign apps array.
args?
Uint8Array
<ArrayBufferLike
>[]
Any arguments to pass to the smart contract call.
assetReferences?
bigint
[]
The ID of any assets to load to the foreign assets array.
boxReferences?
(BoxReference
| BoxIdentifier
)[]
Any boxes to load to the boxes array.
Either the name identifier (which will be set against app ID of 0
i.e.
the current app), or a box identifier with the name identifier and app ID.
extraFee?
AlgoAmount
The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees.
firstValidRound?
bigint
Set the first round this transaction is valid. If left undefined, the value from algod will be used.
We recommend you only set this when you intentionally want this to be some time in the future.
lastValidRound?
bigint
The last round this transaction is valid. It is recommended to use validityWindow
instead.
lease?
string
| Uint8Array
<ArrayBufferLike
>
Prevent multiple transactions with the same lease being included within the validity window.
A lease enforces a mutually exclusive transaction (useful to prevent double-posting and other scenarios).
maxFee?
AlgoAmount
Throw an error if the fee for the transaction is more than this amount; prevents overspending on fees during high congestion periods.
note?
string
| Uint8Array
<ArrayBufferLike
>
Note to attach to the transaction. Max of 1000 bytes.
rekeyTo?
string
| Address
Change the signing key of the sender to the given address.
Warning: Please be careful with this parameter and be sure to read the official rekey guidance.
sender?
string
| Address
The address of the account sending the transaction, if undefined then the app client’s defaultSender is used.
signer?
TransactionSigner
| TransactionSignerAccount
The function used to sign transaction(s); if not specified then
an attempt will be made to find a registered signer for the
given sender
or use a default signer (if configured).
staticFee?
AlgoAmount
The static transaction fee. In most cases you want to use extraFee
unless setting the fee to 0 to be covered by another transaction.
validityWindow?
number
| bigint
How many rounds the transaction should be valid for, if not specified then the registered default validity window will be used.
Returns
object
& object
The params for a deployDelete call
send
readonly
send:object
Defined in: packages/store-kit/src/lodash/client.ts:412
Send calls to the current app
create
create:
object
Gets available create methods
create.bare()
bare: (
params
?) =>Promise
<{appClient
:LodashClient
;result
: {appAddress
:Address
;appId
:bigint
;compiledApproval
:CompiledTeal
;compiledClear
:CompiledTeal
;confirmation
:PendingTransactionResponse
;confirmations
:PendingTransactionResponse
[];groupId
:string
;return
:undefined
;returns
:ABIReturn
[];transaction
:Transaction
;transactions
:Transaction
[];txIds
:string
[]; }; }>
Creates a new instance of the Lodash smart contract using a bare call.
Parameters
params?
The params for the bare (raw) call
accountReferences?
(string
| Address
)[]
Any account addresses to add to the accounts array.
appReferences?
bigint
[]
The ID of any apps to load to the foreign apps array.
args?
Uint8Array
<ArrayBufferLike
>[]
Any arguments to pass to the smart contract call.
assetReferences?
bigint
[]
The ID of any assets to load to the foreign assets array.
boxReferences?
(BoxReference
| BoxIdentifier
)[]
Any boxes to load to the boxes array.
Either the name identifier (which will be set against app ID of 0
i.e.
the current app), or a box identifier with the name identifier and app ID.
coverAppCallInnerTransactionFees?
boolean
Whether to use simulate to automatically calculate required app call inner transaction fees and cover them in the parent app call transaction fee
deletable?
boolean
Whether or not the contract should have deploy-time permanence control set, undefined = ignore
deployTimeParams?
TealTemplateParams
Any deploy-time parameters to replace in the TEAL code
extraFee?
AlgoAmount
The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees.
extraProgramPages?
number
Number of extra pages required for the programs. Defaults to the number needed for the programs in this call if not specified. This is immutable once the app is created.
firstValidRound?
bigint
Set the first round this transaction is valid. If left undefined, the value from algod will be used.
We recommend you only set this when you intentionally want this to be some time in the future.
lastValidRound?
bigint
The last round this transaction is valid. It is recommended to use validityWindow
instead.
lease?
string
| Uint8Array
<ArrayBufferLike
>
Prevent multiple transactions with the same lease being included within the validity window.
A lease enforces a mutually exclusive transaction (useful to prevent double-posting and other scenarios).
maxFee?
AlgoAmount
Throw an error if the fee for the transaction is more than this amount; prevents overspending on fees during high congestion periods.
maxRoundsToWaitForConfirmation?
number
The number of rounds to wait for confirmation. By default until the latest lastValid has past.
note?
string
| Uint8Array
<ArrayBufferLike
>
Note to attach to the transaction. Max of 1000 bytes.
onComplete?
NoOpOC
populateAppCallResources?
boolean
Whether to use simulate to automatically populate app call resources in the txn objects. Defaults to Config.populateAppCallResources
.
rekeyTo?
string
| Address
Change the signing key of the sender to the given address.
Warning: Please be careful with this parameter and be sure to read the official rekey guidance.
schema?
{ globalByteSlices
: number
; globalInts
: number
; localByteSlices
: number
; localInts
: number
; }
The state schema for the app. This is immutable once the app is created. By default uses the ARC32/ARC-56 spec.
schema.globalByteSlices
number
The number of byte slices saved in global state.
schema.globalInts
number
The number of integers saved in global state.
schema.localByteSlices
number
The number of byte slices saved in local state.
schema.localInts
number
The number of integers saved in local state.
sender?
string
| Address
The address of the account sending the transaction, if undefined then the app client’s defaultSender is used.
signer?
TransactionSigner
| TransactionSignerAccount
The function used to sign transaction(s); if not specified then
an attempt will be made to find a registered signer for the
given sender
or use a default signer (if configured).
staticFee?
AlgoAmount
The static transaction fee. In most cases you want to use extraFee
unless setting the fee to 0 to be covered by another transaction.
suppressLog?
boolean
Whether to suppress log messages from transaction send, default: do not suppress.
updatable?
boolean
Whether or not the contract should have deploy-time immutability control set, undefined = ignore
validityWindow?
number
| bigint
How many rounds the transaction should be valid for, if not specified then the registered default validity window will be used.
Returns
Promise
<{ appClient
: LodashClient
; result
: { appAddress
: Address
; appId
: bigint
; compiledApproval
: CompiledTeal
; compiledClear
: CompiledTeal
; confirmation
: PendingTransactionResponse
; confirmations
: PendingTransactionResponse
[]; groupId
: string
; return
: undefined
; returns
: ABIReturn
[]; transaction
: Transaction
; transactions
: Transaction
[]; txIds
: string
[]; }; }>
The create result
Accessors
algorand
Get Signature
get algorand():
AlgorandClientInterface
Defined in: packages/store-kit/src/lodash/client.ts:308
A reference to the underlying AlgorandClient
this app factory is using.
Returns
AlgorandClientInterface
appName
Get Signature
get appName():
string
Defined in: packages/store-kit/src/lodash/client.ts:298
The name of the app (from the ARC-32 / ARC-56 app spec or override).
Returns
string
appSpec
Get Signature
get appSpec():
Arc56Contract
Defined in: packages/store-kit/src/lodash/client.ts:303
The ARC-56 app spec being used
Returns
Arc56Contract
Methods
deploy()
deploy(
params
):Promise
<{appClient
:LodashClient
;result
: {appAddress
:Address
;appId
:bigint
;compiledApproval
:CompiledTeal
;compiledClear
:CompiledTeal
;confirmation
:PendingTransactionResponse
;confirmations
:PendingTransactionResponse
[];createdMetadata
:AppDeployMetadata
;createdRound
:bigint
;deletable
:boolean
;deleted
:boolean
;deleteReturn
:undefined
|ABIValue
|ABIStruct
;groupId
:string
;name
:string
;operationPerformed
:"create"
;return
:undefined
|ABIValue
|ABIStruct
;returns
:ABIReturn
[];transaction
:Transaction
;transactions
:Transaction
[];txIds
:string
[];updatable
:boolean
;updatedRound
:bigint
;version
:string
; } | {appAddress
:Address
;appId
:bigint
;compiledApproval
:CompiledTeal
;compiledClear
:CompiledTeal
;confirmation
:PendingTransactionResponse
;confirmations
:PendingTransactionResponse
[];createdMetadata
:AppDeployMetadata
;createdRound
:bigint
;deletable
:boolean
;deleted
:boolean
;deleteReturn
:undefined
|ABIValue
|ABIStruct
;groupId
:string
;name
:string
;operationPerformed
:"update"
;return
:undefined
|ABIValue
|ABIStruct
;returns
:ABIReturn
[];transaction
:Transaction
;transactions
:Transaction
[];txIds
:string
[];updatable
:boolean
;updatedRound
:bigint
;version
:string
; } | {appAddress
:Address
;appId
:bigint
;compiledApproval
:CompiledTeal
;compiledClear
:CompiledTeal
;confirmation
:PendingTransactionResponse
;confirmations
:PendingTransactionResponse
[];createdMetadata
:AppDeployMetadata
;createdRound
:bigint
;deletable
:boolean
;deleted
:boolean
;deleteResult
:ConfirmedTransactionResult
;deleteReturn
:undefined
|ABIValue
|ABIStruct
;groupId
:string
;name
:string
;operationPerformed
:"replace"
;return
:undefined
|ABIValue
|ABIStruct
;returns
:ABIReturn
[];transaction
:Transaction
;transactions
:Transaction
[];txIds
:string
[];updatable
:boolean
;updatedRound
:bigint
;version
:string
; } | {appAddress
:Address
;appId
:bigint
;compiledApproval
:CompiledTeal
;compiledClear
:CompiledTeal
;createdMetadata
:AppDeployMetadata
;createdRound
:bigint
;deletable
:boolean
;deleted
:boolean
;deleteReturn
:undefined
|ABIValue
|ABIStruct
;name
:string
;operationPerformed
:"nothing"
;return
:undefined
|ABIValue
|ABIStruct
;updatable
:boolean
;updatedRound
:bigint
;version
:string
; }; }>
Defined in: packages/store-kit/src/lodash/client.ts:345
Idempotently deploys the Lodash smart contract.
Parameters
params
The arguments for the contract calls and any additional parameters for the call
appName?
string
Override the app name for this deployment
coverAppCallInnerTransactionFees?
boolean
Whether to use simulate to automatically calculate required app call inner transaction fees and cover them in the parent app call transaction fee
createParams?
{ accountReferences
: (string
| Address
)[]; appReferences
: bigint
[]; args
: Uint8Array
<ArrayBufferLike
>[]; assetReferences
: bigint
[]; boxReferences
: (BoxReference
| BoxIdentifier
)[]; extraFee
: AlgoAmount
; extraProgramPages
: number
; firstValidRound
: bigint
; lastValidRound
: bigint
; lease
: string
| Uint8Array
<ArrayBufferLike
>; maxFee
: AlgoAmount
; method
: undefined
; note
: string
| Uint8Array
<ArrayBufferLike
>; onComplete
: NoOpOC
; rekeyTo
: string
| Address
; schema
: { globalByteSlices
: number
; globalInts
: number
; localByteSlices
: number
; localInts
: number
; }; sender
: string
| Address
; signer
: TransactionSigner
| TransactionSignerAccount
; staticFee
: AlgoAmount
; validityWindow
: number
| bigint
; }
Create transaction parameters to use if a create needs to be issued as part of deployment; use method
to define ABI call (if available) or leave out for a bare call (if available)
createParams.accountReferences?
(string
| Address
)[]
Any account addresses to add to the accounts array.
createParams.appReferences?
bigint
[]
The ID of any apps to load to the foreign apps array.
createParams.args?
Uint8Array
<ArrayBufferLike
>[]
Any arguments to pass to the smart contract call.
createParams.assetReferences?
bigint
[]
The ID of any assets to load to the foreign assets array.
createParams.boxReferences?
(BoxReference
| BoxIdentifier
)[]
Any boxes to load to the boxes array.
Either the name identifier (which will be set against app ID of 0
i.e.
the current app), or a box identifier with the name identifier and app ID.
createParams.extraFee?
AlgoAmount
The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees.
createParams.extraProgramPages?
number
Number of extra pages required for the programs. Defaults to the number needed for the programs in this call if not specified. This is immutable once the app is created.
createParams.firstValidRound?
bigint
Set the first round this transaction is valid. If left undefined, the value from algod will be used.
We recommend you only set this when you intentionally want this to be some time in the future.
createParams.lastValidRound?
bigint
The last round this transaction is valid. It is recommended to use validityWindow
instead.
createParams.lease?
string
| Uint8Array
<ArrayBufferLike
>
Prevent multiple transactions with the same lease being included within the validity window.
A lease enforces a mutually exclusive transaction (useful to prevent double-posting and other scenarios).
createParams.maxFee?
AlgoAmount
Throw an error if the fee for the transaction is more than this amount; prevents overspending on fees during high congestion periods.
createParams.method?
undefined
createParams.note?
string
| Uint8Array
<ArrayBufferLike
>
Note to attach to the transaction. Max of 1000 bytes.
createParams.onComplete?
NoOpOC
createParams.rekeyTo?
string
| Address
Change the signing key of the sender to the given address.
Warning: Please be careful with this parameter and be sure to read the official rekey guidance.
createParams.schema?
{ globalByteSlices
: number
; globalInts
: number
; localByteSlices
: number
; localInts
: number
; }
The state schema for the app. This is immutable once the app is created. By default uses the ARC32/ARC-56 spec.
createParams.schema.globalByteSlices
number
The number of byte slices saved in global state.
createParams.schema.globalInts
number
The number of integers saved in global state.
createParams.schema.localByteSlices
number
The number of byte slices saved in local state.
createParams.schema.localInts
number
The number of integers saved in local state.
createParams.sender?
string
| Address
The address of the account sending the transaction, if undefined then the app client’s defaultSender is used.
createParams.signer?
TransactionSigner
| TransactionSignerAccount
The function used to sign transaction(s); if not specified then
an attempt will be made to find a registered signer for the
given sender
or use a default signer (if configured).
createParams.staticFee?
AlgoAmount
The static transaction fee. In most cases you want to use extraFee
unless setting the fee to 0 to be covered by another transaction.
createParams.validityWindow?
number
| bigint
How many rounds the transaction should be valid for, if not specified then the registered default validity window will be used.
deletable?
boolean
Whether or not the contract should have deploy-time permanence control set.
undefined
= use AppFactory constructor value if set or base it on the app spec.
deleteParams?
object
& object
Delete transaction parameters to use if a create needs to be issued as part of deployment; use method
to define ABI call (if available) or leave out for a bare call (if available)
deployTimeParams?
TealTemplateParams
Any deploy-time parameters to replace in the TEAL code before compiling it (used if teal code is passed in as a string)
existingDeployments?
AppLookup
Optional cached value of the existing apps for the given creator; use this to avoid an indexer lookup
ignoreCache?
boolean
Whether or not to ignore the app metadata cache and force a lookup, default: use the cache *
maxRoundsToWaitForConfirmation?
number
The number of rounds to wait for confirmation. By default until the latest lastValid has past.
onSchemaBreak?
"replace"
| "fail"
| "append"
| OnSchemaBreak
What action to perform if a schema break (storage schema or extra pages change) is detected:
fail
- Fail the deployment (throw an error, default)replace
- Delete the old app and create a new oneappend
- Deploy a new app and leave the old one as is
onUpdate?
"replace"
| "fail"
| "append"
| "update"
| OnUpdate
What action to perform if a TEAL code update is detected:
fail
- Fail the deployment (throw an error, default)update
- Update the app with the new TEAL codereplace
- Delete the old app and create a new oneappend
- Deploy a new app and leave the old one as is
populateAppCallResources?
boolean
Whether to use simulate to automatically populate app call resources in the txn objects. Defaults to Config.populateAppCallResources
.
suppressLog?
boolean
Whether to suppress log messages from transaction send, default: do not suppress.
updatable?
boolean
Whether or not the contract should have deploy-time immutability control set.
undefined
= use AppFactory constructor value if set or base it on the app spec.
Returns
Promise
<{ appClient
: LodashClient
; result
: { appAddress
: Address
; appId
: bigint
; compiledApproval
: CompiledTeal
; compiledClear
: CompiledTeal
; confirmation
: PendingTransactionResponse
; confirmations
: PendingTransactionResponse
[]; createdMetadata
: AppDeployMetadata
; createdRound
: bigint
; deletable
: boolean
; deleted
: boolean
; deleteReturn
: undefined
| ABIValue
| ABIStruct
; groupId
: string
; name
: string
; operationPerformed
: "create"
; return
: undefined
| ABIValue
| ABIStruct
; returns
: ABIReturn
[]; transaction
: Transaction
; transactions
: Transaction
[]; txIds
: string
[]; updatable
: boolean
; updatedRound
: bigint
; version
: string
; } | { appAddress
: Address
; appId
: bigint
; compiledApproval
: CompiledTeal
; compiledClear
: CompiledTeal
; confirmation
: PendingTransactionResponse
; confirmations
: PendingTransactionResponse
[]; createdMetadata
: AppDeployMetadata
; createdRound
: bigint
; deletable
: boolean
; deleted
: boolean
; deleteReturn
: undefined
| ABIValue
| ABIStruct
; groupId
: string
; name
: string
; operationPerformed
: "update"
; return
: undefined
| ABIValue
| ABIStruct
; returns
: ABIReturn
[]; transaction
: Transaction
; transactions
: Transaction
[]; txIds
: string
[]; updatable
: boolean
; updatedRound
: bigint
; version
: string
; } | { appAddress
: Address
; appId
: bigint
; compiledApproval
: CompiledTeal
; compiledClear
: CompiledTeal
; confirmation
: PendingTransactionResponse
; confirmations
: PendingTransactionResponse
[]; createdMetadata
: AppDeployMetadata
; createdRound
: bigint
; deletable
: boolean
; deleted
: boolean
; deleteResult
: ConfirmedTransactionResult
; deleteReturn
: undefined
| ABIValue
| ABIStruct
; groupId
: string
; name
: string
; operationPerformed
: "replace"
; return
: undefined
| ABIValue
| ABIStruct
; returns
: ABIReturn
[]; transaction
: Transaction
; transactions
: Transaction
[]; txIds
: string
[]; updatable
: boolean
; updatedRound
: bigint
; version
: string
; } | { appAddress
: Address
; appId
: bigint
; compiledApproval
: CompiledTeal
; compiledClear
: CompiledTeal
; createdMetadata
: AppDeployMetadata
; createdRound
: bigint
; deletable
: boolean
; deleted
: boolean
; deleteReturn
: undefined
| ABIValue
| ABIStruct
; name
: string
; operationPerformed
: "nothing"
; return
: undefined
| ABIValue
| ABIStruct
; updatable
: boolean
; updatedRound
: bigint
; version
: string
; }; }>
The deployment result
getAppClientByCreatorAndName()
getAppClientByCreatorAndName(
params
):Promise
<LodashClient
>
Defined in: packages/store-kit/src/lodash/client.ts:333
Returns a new AppClient
client, resolving the app by creator address and name
using AlgoKit app deployment semantics (i.e. looking for the app creation transaction note).
Automatically populates appName, defaultSender and source maps from the factory if not specified in the params.
Parameters
params
The parameters to create the app client
appLookupCache?
AppLookup
An optional cached app lookup that matches a name to on-chain details;
either this is needed or indexer is required to be passed in to this ClientManager
on construction.
appName?
string
Optional override for the app name; used for on-chain metadata and lookups. Defaults to the ARC-32/ARC-56 app spec name
approvalSourceMap?
ProgramSourceMap
Optional source map for the approval program
clearSourceMap?
ProgramSourceMap
Optional source map for the clear state program
creatorAddress
string
| Address
The address of the creator account for the app
defaultSender?
string
| Address
Optional address to use for the account to use as the default sender for calls.
defaultSigner?
TransactionSigner
Optional signer to use as the default signer for default sender calls (if not specified then the signer will be resolved from AlgorandClient
).
ignoreCache?
boolean
Whether or not to ignore the AppDeployer
lookup cache and force an on-chain lookup, default: use any cached value
Returns
Promise
<LodashClient
>
The AppClient
getAppClientById()
getAppClientById(
params
):LodashClient
Defined in: packages/store-kit/src/lodash/client.ts:320
Returns a new AppClient
client for an app instance of the given ID.
Automatically populates appName, defaultSender and source maps from the factory if not specified in the params.
Parameters
params
The parameters to create the app client
appId
bigint
The ID of the app instance this client should make calls against.
appName?
string
Optional override for the app name; used for on-chain metadata and lookups. Defaults to the ARC-32/ARC-56 app spec name
approvalSourceMap?
ProgramSourceMap
Optional source map for the approval program
clearSourceMap?
ProgramSourceMap
Optional source map for the clear state program
defaultSender?
string
| Address
Optional address to use for the account to use as the default sender for calls.
defaultSigner?
TransactionSigner
Optional signer to use as the default signer for default sender calls (if not specified then the signer will be resolved from AlgorandClient
).
Returns
The AppClient