From 0d732d9dbc5fc42e76ba68daac563d0cdd7ed7fc Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Thu, 13 Nov 2025 14:54:10 +1000 Subject: [PATCH 01/43] wip - remove SDK abi types --- MIGRATION-NOTES.md | 4 +- packages/abi/src/abi-type.ts | 19 +- packages/abi/src/abi-value.ts | 6 +- packages/common/src/address.ts | 2 +- packages/sdk/package.json | 4 +- packages/sdk/src/abi/abi_type.ts | 864 ----------------------- packages/sdk/src/abi/index.ts | 30 +- packages/sdk/src/abi/method.ts | 170 ++--- src/transaction/legacy-bridge.ts | 33 +- src/transaction/transaction.spec.ts | 8 +- src/transactions/method-call.ts | 12 +- src/types/app-arc56.ts | 36 +- src/types/app-client.spec.ts | 8 +- src/types/app-factory-and-client.spec.ts | 6 +- src/types/app-manager.ts | 4 +- src/types/app-spec.ts | 2 +- src/util.spec.ts | 46 +- src/util.ts | 26 +- 18 files changed, 220 insertions(+), 1060 deletions(-) delete mode 100644 packages/sdk/src/abi/abi_type.ts diff --git a/MIGRATION-NOTES.md b/MIGRATION-NOTES.md index 03abce36d..d9bdef548 100644 --- a/MIGRATION-NOTES.md +++ b/MIGRATION-NOTES.md @@ -34,5 +34,7 @@ A collection of random notes pop up during the migration process. - transaction_asserts uses 'noble/ed25519' while composer uses nacl, which one should we use? - additionalAtcContext was removed from AtomicTransactionComposerToSend - ABI - - how to construct ABIStruct from string + - ABIStruct can't be constructed from string. + - Bring the unhappy path tests over (fail to encode/decode) + - TODO: PD - revert this: the names are ABIStaticArrayType and ABIDynamicArrayType (not ABIArrayStaticType and ABIArrayDynamicType) - Make sure that the python utils also sort resources during resource population diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 9a1b54318..37788a1d9 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -7,7 +7,7 @@ import { PUBLIC_KEY_BYTE_LENGTH, publicKeyFromAddress, } from '@algorandfoundation/algokit-common' -import type { ABIStructValue, ABIValue } from './abi-value' +import type { ABIAddressValue, ABIStructValue, ABIValue } from './abi-value' import { StructField } from './arc56-contract' import { bigIntToBytes, bytesToBigInt } from './bigint' @@ -280,6 +280,16 @@ function encodeAddress(value: ABIValue): Uint8Array { if (typeof value === 'string') { return publicKeyFromAddress(value) } + if (isABIAddressValue(value)) { + return value.publicKey + } + if (value instanceof Uint8Array) { + if (value.byteLength !== 32) { + throw new Error(`byte string must be 32 bytes long for an address`) + } + return value + } + throw new Error(`Encoding Error: Cannot encode value as address: ${value}`) } @@ -573,7 +583,7 @@ export type ABIStructField = { } function encodeStruct(type: ABIStructType, value: ABIValue): Uint8Array { - if (typeof value !== 'object' || Array.isArray(value) || value instanceof Uint8Array) { + if (typeof value !== 'object' || Array.isArray(value) || value instanceof Uint8Array || isABIAddressValue(value)) { throw new Error(`Cannot encode value as ${structToString(type)}: ${value}`) } @@ -981,3 +991,8 @@ function getSize(abiType: ABIType): number { throw new Error(`Validation Error: Failed to get size, dynamic array is a dynamic type`) } } + +// eslint-disable-next-line @typescript-eslint/no-explicit-any +function isABIAddressValue(value: any): value is ABIAddressValue { + return 'publicKey' in value +} diff --git a/packages/abi/src/abi-value.ts b/packages/abi/src/abi-value.ts index ccb284875..3169bcd17 100644 --- a/packages/abi/src/abi-value.ts +++ b/packages/abi/src/abi-value.ts @@ -1,7 +1,11 @@ -export type ABIValue = boolean | number | bigint | string | Uint8Array | ABIValue[] | ABIStructValue +export type ABIValue = boolean | number | bigint | string | Uint8Array | ABIValue[] | ABIStructValue | ABIAddressValue export type ABIStructValue = { [key: string]: ABIValue } export type ABIReferenceValue = string | bigint + +export interface ABIAddressValue { + readonly publicKey: Uint8Array +} diff --git a/packages/common/src/address.ts b/packages/common/src/address.ts index 40995763e..1f5c1b60c 100644 --- a/packages/common/src/address.ts +++ b/packages/common/src/address.ts @@ -6,7 +6,7 @@ import { hash } from './crypto' const APP_ID_PREFIX = new TextEncoder().encode('appID') -export function checksumFromPublicKey(publicKey: Uint8Array): Uint8Array { +function checksumFromPublicKey(publicKey: Uint8Array): Uint8Array { return Uint8Array.from(sha512.sha512_256.array(publicKey).slice(HASH_BYTES_LENGTH - CHECKSUM_BYTE_LENGTH, HASH_BYTES_LENGTH)) } diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 3a620fe38..7b4bc199e 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -20,7 +20,9 @@ "audit": "better-npm-audit audit", "pre-commit": "run-s check-types lint:fix audit format test" }, - "dependencies": {}, + "dependencies": { + "@algorandfoundation/algokit-abi": "workspace:*" + }, "peerDependencies": {}, "devDependencies": {} } \ No newline at end of file diff --git a/packages/sdk/src/abi/abi_type.ts b/packages/sdk/src/abi/abi_type.ts deleted file mode 100644 index bd467a90d..000000000 --- a/packages/sdk/src/abi/abi_type.ts +++ /dev/null @@ -1,864 +0,0 @@ -/* eslint-disable no-bitwise */ -/* eslint-disable no-use-before-define */ -/* eslint-disable class-methods-use-this */ - -/** - //ABI-Types: uint: An N-bit unsigned integer (8 <= N <= 512 and N % 8 = 0). - // | byte (alias for uint8) - // | ufixed x (8 <= N <= 512, N % 8 = 0, and 0 < M <= 160) - // | bool - // | address (alias for byte[32]) - // | [] - // | [] - // | string - // | (T1, ..., Tn) -*/ -import { encodeAddress, decodeAddress, Address } from '../encoding/address.js'; -import { bigIntToBytes, bytesToBigInt } from '../encoding/bigint.js'; -import { concatArrays } from '../utils/utils.js'; - -export const MAX_LEN = 2 ** 16 - 1; -export const ADDR_BYTE_SIZE = 32; -export const SINGLE_BYTE_SIZE = 1; -export const SINGLE_BOOL_SIZE = 1; -export const LENGTH_ENCODE_BYTE_SIZE = 2; - -interface Segment { - left: number; - right: number; -} - -const staticArrayRegexp = /^([a-z\d[\](),]+)\[(0|[1-9][\d]*)]$/; -const ufixedRegexp = /^ufixed([1-9][\d]*)x([1-9][\d]*)$/; - -export type ABIValue = - | boolean - | number - | bigint - | string - | Uint8Array - | ABIValue[] - | Address; - -export abstract class ABIType { - // Converts a ABIType object to a string - abstract toString(): string; - // Checks if two ABIType objects are equal in value - abstract equals(other: ABIType): boolean; - // Checks if the ABIType object (or any of its child types) have dynamic length - abstract isDynamic(): boolean; - // Returns the size of the ABIType object in bytes - abstract byteLen(): number; - // Encodes a value for the ABIType object using the ABI specs - abstract encode(value: ABIValue): Uint8Array; - // Decodes a value for the ABIType object using the ABI specs - abstract decode(byteString: Uint8Array): ABIValue; - // De-serializes the ABI type from a string using the ABI specs - static from(str: string): ABIType { - if (str.endsWith('[]')) { - const arrayArgType = ABIType.from(str.slice(0, str.length - 2)); - return new ABIArrayDynamicType(arrayArgType); - } - if (str.endsWith(']')) { - const stringMatches = str.match(staticArrayRegexp); - // Match the string itself, array element type, then array length - if (!stringMatches || stringMatches.length !== 3) { - throw new Error(`malformed static array string: ${str}`); - } - // Parse static array using regex - const arrayLengthStr = stringMatches[2]; - const arrayLength = parseInt(arrayLengthStr, 10); - if (arrayLength > MAX_LEN) { - throw new Error(`array length exceeds limit ${MAX_LEN}`); - } - // Parse the array element type - const arrayType = ABIType.from(stringMatches[1]); - return new ABIArrayStaticType(arrayType, arrayLength); - } - if (str.startsWith('uint')) { - // Checks if the parsed number contains only digits, no whitespaces - const digitsOnly = (s: string) => - [...s].every((c) => '0123456789'.includes(c)); - const typeSizeStr = str.slice(4, str.length); - if (!digitsOnly(typeSizeStr)) { - throw new Error(`malformed uint string: ${typeSizeStr}`); - } - const typeSize = parseInt(typeSizeStr, 10); - if (typeSize > MAX_LEN) { - throw new Error(`malformed uint string: ${typeSize}`); - } - return new ABIUintType(typeSize); - } - if (str === 'byte') { - return new ABIByteType(); - } - if (str.startsWith('ufixed')) { - const stringMatches = str.match(ufixedRegexp); - if (!stringMatches || stringMatches.length !== 3) { - throw new Error(`malformed ufixed type: ${str}`); - } - const ufixedSize = parseInt(stringMatches[1], 10); - const ufixedPrecision = parseInt(stringMatches[2], 10); - return new ABIUfixedType(ufixedSize, ufixedPrecision); - } - if (str === 'bool') { - return new ABIBoolType(); - } - if (str === 'address') { - return new ABIAddressType(); - } - if (str === 'string') { - return new ABIStringType(); - } - if (str.length >= 2 && str[0] === '(' && str[str.length - 1] === ')') { - const tupleContent = ABITupleType.parseTupleContent( - str.slice(1, str.length - 1) - ); - const tupleTypes: ABIType[] = []; - for (let i = 0; i < tupleContent.length; i++) { - const ti = ABIType.from(tupleContent[i]); - tupleTypes.push(ti); - } - return new ABITupleType(tupleTypes); - } - throw new Error(`cannot convert a string ${str} to an ABI type`); - } -} - -export class ABIUintType extends ABIType { - bitSize: number; - - constructor(size: number) { - super(); - if (size % 8 !== 0 || size < 8 || size > 512) { - throw new Error(`unsupported uint type bitSize: ${size}`); - } - this.bitSize = size; - } - - toString() { - return `uint${this.bitSize}`; - } - - equals(other: ABIType) { - return other instanceof ABIUintType && this.bitSize === other.bitSize; - } - - isDynamic() { - return false; - } - - byteLen() { - return this.bitSize / 8; - } - - encode(value: ABIValue) { - if (typeof value !== 'bigint' && typeof value !== 'number') { - throw new Error(`Cannot encode value as uint${this.bitSize}: ${value}`); - } - if (value >= BigInt(2 ** this.bitSize) || value < BigInt(0)) { - throw new Error( - `${value} is not a non-negative int or too big to fit in size uint${this.bitSize}` - ); - } - if (typeof value === 'number' && !Number.isSafeInteger(value)) { - throw new Error( - `${value} should be converted into a BigInt before it is encoded` - ); - } - return bigIntToBytes(value, this.bitSize / 8); - } - - decode(byteString: Uint8Array): bigint { - if (byteString.length !== this.bitSize / 8) { - throw new Error(`byte string must correspond to a uint${this.bitSize}`); - } - return bytesToBigInt(byteString); - } -} - -export class ABIUfixedType extends ABIType { - bitSize: number; - precision: number; - - constructor(size: number, denominator: number) { - super(); - if (size % 8 !== 0 || size < 8 || size > 512) { - throw new Error(`unsupported ufixed type bitSize: ${size}`); - } - if (denominator > 160 || denominator < 1) { - throw new Error(`unsupported ufixed type precision: ${denominator}`); - } - this.bitSize = size; - this.precision = denominator; - } - - toString() { - return `ufixed${this.bitSize}x${this.precision}`; - } - - equals(other: ABIType) { - return ( - other instanceof ABIUfixedType && - this.bitSize === other.bitSize && - this.precision === other.precision - ); - } - - isDynamic() { - return false; - } - - byteLen() { - return this.bitSize / 8; - } - - encode(value: ABIValue) { - if (typeof value !== 'bigint' && typeof value !== 'number') { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`); - } - if (value >= BigInt(2 ** this.bitSize) || value < BigInt(0)) { - throw new Error( - `${value} is not a non-negative int or too big to fit in size ${this.toString()}` - ); - } - if (typeof value === 'number' && !Number.isSafeInteger(value)) { - throw new Error( - `${value} should be converted into a BigInt before it is encoded` - ); - } - return bigIntToBytes(value, this.bitSize / 8); - } - - decode(byteString: Uint8Array): bigint { - if (byteString.length !== this.bitSize / 8) { - throw new Error(`byte string must correspond to a ${this.toString()}`); - } - return bytesToBigInt(byteString); - } -} - -export class ABIAddressType extends ABIType { - toString() { - return 'address'; - } - - equals(other: ABIType) { - return other instanceof ABIAddressType; - } - - isDynamic() { - return false; - } - - byteLen() { - return ADDR_BYTE_SIZE; - } - - encode(value: ABIValue) { - if (typeof value === 'string') { - const decodedAddress = decodeAddress(value); - return decodedAddress.publicKey; - } - - if (value instanceof Address) { - return value.publicKey; - } - - if (value instanceof Uint8Array) { - if (value.byteLength !== 32) { - throw new Error(`byte string must be 32 bytes long for an address`); - } - - return value; - } - - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`); - } - - decode(byteString: Uint8Array): string { - if (byteString.byteLength !== 32) { - throw new Error(`byte string must be 32 bytes long for an address`); - } - return encodeAddress(byteString); - } -} - -export class ABIBoolType extends ABIType { - toString() { - return 'bool'; - } - - equals(other: ABIType) { - return other instanceof ABIBoolType; - } - - isDynamic() { - return false; - } - - byteLen() { - return SINGLE_BOOL_SIZE; - } - - encode(value: ABIValue) { - if (typeof value !== 'boolean') { - throw new Error(`Cannot encode value as bool: ${value}`); - } - if (value) { - return new Uint8Array([128]); - } - return new Uint8Array([0]); - } - - decode(byteString: Uint8Array): boolean { - if (byteString.byteLength !== 1) { - throw new Error(`bool string must be 1 byte long`); - } - const value = byteString[0]; - if (value === 128) { - return true; - } - if (value === 0) { - return false; - } - throw new Error(`boolean could not be decoded from the byte string`); - } -} - -export class ABIByteType extends ABIType { - toString() { - return 'byte'; - } - - equals(other: ABIType) { - return other instanceof ABIByteType; - } - - isDynamic() { - return false; - } - - byteLen() { - return SINGLE_BYTE_SIZE; - } - - encode(value: ABIValue) { - if (typeof value !== 'number' && typeof value !== 'bigint') { - throw new Error(`Cannot encode value as byte: ${value}`); - } - if (typeof value === 'bigint') { - // eslint-disable-next-line no-param-reassign - value = Number(value); - } - if (value < 0 || value > 255) { - throw new Error(`${value} cannot be encoded into a byte`); - } - return new Uint8Array([value]); - } - - decode(byteString: Uint8Array): number { - if (byteString.byteLength !== 1) { - throw new Error(`byte string must be 1 byte long`); - } - return byteString[0]; - } -} - -export class ABIStringType extends ABIType { - toString() { - return 'string'; - } - - equals(other: ABIType) { - return other instanceof ABIStringType; - } - - isDynamic() { - return true; - } - - byteLen(): never { - throw new Error(`${this.toString()} is a dynamic type`); - } - - encode(value: ABIValue) { - if (typeof value !== 'string' && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as string: ${value}`); - } - let encodedBytes: Uint8Array; - if (typeof value === 'string') { - encodedBytes = new TextEncoder().encode(value); - } else { - encodedBytes = value; - } - const encodedLength = bigIntToBytes( - encodedBytes.length, - LENGTH_ENCODE_BYTE_SIZE - ); - const mergedBytes = new Uint8Array( - encodedBytes.length + LENGTH_ENCODE_BYTE_SIZE - ); - mergedBytes.set(encodedLength); - mergedBytes.set(encodedBytes, LENGTH_ENCODE_BYTE_SIZE); - return mergedBytes; - } - - decode(byteString: Uint8Array): string { - if (byteString.length < LENGTH_ENCODE_BYTE_SIZE) { - throw new Error( - `byte string is too short to be decoded. Actual length is ${byteString.length}, but expected at least ${LENGTH_ENCODE_BYTE_SIZE}` - ); - } - const view = new DataView( - byteString.buffer, - byteString.byteOffset, - LENGTH_ENCODE_BYTE_SIZE - ); - const byteLength = view.getUint16(0); - const byteValue = byteString.slice( - LENGTH_ENCODE_BYTE_SIZE, - byteString.length - ); - if (byteLength !== byteValue.length) { - throw new Error( - `string length bytes do not match the actual length of string. Expected ${byteLength}, got ${byteValue.length}` - ); - } - return new TextDecoder('utf-8').decode(byteValue); - } -} - -export class ABIArrayStaticType extends ABIType { - childType: ABIType; - staticLength: number; - - constructor(argType: ABIType, arrayLength: number) { - super(); - if (arrayLength < 0) { - throw new Error( - `static array must have a non negative length: ${arrayLength}` - ); - } - this.childType = argType; - this.staticLength = arrayLength; - } - - toString() { - return `${this.childType.toString()}[${this.staticLength}]`; - } - - equals(other: ABIType) { - return ( - other instanceof ABIArrayStaticType && - this.staticLength === other.staticLength && - this.childType.equals(other.childType) - ); - } - - isDynamic() { - return this.childType.isDynamic(); - } - - byteLen() { - if (this.childType.constructor === ABIBoolType) { - return Math.ceil(this.staticLength / 8); - } - return this.staticLength * this.childType.byteLen(); - } - - encode(value: ABIValue) { - if (!Array.isArray(value) && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`); - } - if (value.length !== this.staticLength) { - throw new Error( - `Value array does not match static array length. Expected ${this.staticLength}, got ${value.length}` - ); - } - const convertedTuple = this.toABITupleType(); - return convertedTuple.encode(value); - } - - decode(byteString: Uint8Array): ABIValue[] { - const convertedTuple = this.toABITupleType(); - return convertedTuple.decode(byteString); - } - - toABITupleType() { - return new ABITupleType(Array(this.staticLength).fill(this.childType)); - } -} - -export class ABIArrayDynamicType extends ABIType { - childType: ABIType; - - constructor(argType: ABIType) { - super(); - this.childType = argType; - } - - toString() { - return `${this.childType.toString()}[]`; - } - - equals(other: ABIType) { - return ( - other instanceof ABIArrayDynamicType && - this.childType.equals(other.childType) - ); - } - - isDynamic() { - return true; - } - - byteLen(): never { - throw new Error(`${this.toString()} is a dynamic type`); - } - - encode(value: ABIValue) { - if (!Array.isArray(value) && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`); - } - const convertedTuple = this.toABITupleType(value.length); - const encodedTuple = convertedTuple.encode(value); - const encodedLength = bigIntToBytes( - convertedTuple.childTypes.length, - LENGTH_ENCODE_BYTE_SIZE - ); - const mergedBytes = concatArrays(encodedLength, encodedTuple); - return mergedBytes; - } - - decode(byteString: Uint8Array): ABIValue[] { - const view = new DataView(byteString.buffer, 0, LENGTH_ENCODE_BYTE_SIZE); - const byteLength = view.getUint16(0); - const convertedTuple = this.toABITupleType(byteLength); - return convertedTuple.decode( - byteString.slice(LENGTH_ENCODE_BYTE_SIZE, byteString.length) - ); - } - - toABITupleType(length: number) { - return new ABITupleType(Array(length).fill(this.childType)); - } -} - -export class ABITupleType extends ABIType { - childTypes: ABIType[]; - - constructor(argTypes: ABIType[]) { - super(); - if (argTypes.length >= MAX_LEN) { - throw new Error( - 'tuple type child type number larger than maximum uint16 error' - ); - } - this.childTypes = argTypes; - } - - toString() { - const typeStrings: string[] = []; - for (let i = 0; i < this.childTypes.length; i++) { - typeStrings[i] = this.childTypes[i].toString(); - } - return `(${typeStrings.join(',')})`; - } - - equals(other: ABIType) { - return ( - other instanceof ABITupleType && - this.childTypes.length === other.childTypes.length && - this.childTypes.every((child, index) => - child.equals(other.childTypes[index]) - ) - ); - } - - isDynamic() { - const isDynamic = (child: ABIType) => child.isDynamic(); - return this.childTypes.some(isDynamic); - } - - byteLen() { - let size = 0; - for (let i = 0; i < this.childTypes.length; i++) { - if (this.childTypes[i].constructor === ABIBoolType) { - const after = findBoolLR(this.childTypes, i, 1); - const boolNum = after + 1; - i += after; - size += Math.trunc((boolNum + 7) / 8); - } else { - const childByteSize = this.childTypes[i].byteLen(); - size += childByteSize; - } - } - return size; - } - - encode(value: ABIValue) { - if (!Array.isArray(value) && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`); - } - const values = Array.from(value); - if (value.length > MAX_LEN) { - throw new Error('length of tuple array should not exceed a uint16'); - } - const tupleTypes = this.childTypes; - const heads: Uint8Array[] = []; - const tails: Uint8Array[] = []; - const isDynamicIndex = new Map(); - let i = 0; - - while (i < tupleTypes.length) { - const tupleType = tupleTypes[i]; - if (tupleType.isDynamic()) { - // Head is not pre-determined for dynamic types; store a placeholder for now - isDynamicIndex.set(heads.length, true); - heads.push(new Uint8Array([0, 0])); - tails.push(tupleType.encode(values[i])); - } else { - if (tupleType.constructor === ABIBoolType) { - const before = findBoolLR(tupleTypes, i, -1); - let after = findBoolLR(tupleTypes, i, 1); - - // Pack bytes to heads and tails - if (before % 8 !== 0) { - throw new Error( - 'expected before index should have number of bool mod 8 equal 0' - ); - } - after = Math.min(7, after); - const compressedInt = compressMultipleBool( - values.slice(i, i + after + 1) - ); - heads.push(bigIntToBytes(compressedInt, 1)); - i += after; - } else { - const encodedTupleValue = tupleType.encode(values[i]); - heads.push(encodedTupleValue); - } - isDynamicIndex.set(i, false); - tails.push(new Uint8Array()); - } - i += 1; - } - - // Adjust head lengths for dynamic types - let headLength = 0; - for (const headElement of heads) { - headLength += headElement.length; - } - - // encode any placeholders for dynamic types - let tailLength = 0; - for (let j = 0; j < heads.length; j++) { - if (isDynamicIndex.get(j)) { - const headValue = headLength + tailLength; - if (headValue > MAX_LEN) { - throw new Error( - `byte length of ${headValue} should not exceed a uint16` - ); - } - heads[j] = bigIntToBytes(headValue, LENGTH_ENCODE_BYTE_SIZE); - } - tailLength += tails[j].length; - } - - return concatArrays(...heads, ...tails); - } - - decode(byteString: Uint8Array): ABIValue[] { - const tupleTypes = this.childTypes; - const dynamicSegments: Segment[] = []; - const valuePartition: Array = []; - let i = 0; - let iterIndex = 0; - const view = new DataView(byteString.buffer); - - while (i < tupleTypes.length) { - const tupleType = tupleTypes[i]; - if (tupleType.isDynamic()) { - if ( - byteString.slice(iterIndex, byteString.length).length < - LENGTH_ENCODE_BYTE_SIZE - ) { - throw new Error('dynamic type in tuple is too short to be decoded'); - } - // Since LENGTH_ENCODE_BYTE_SIZE is 2 and indices are at most 2 bytes, - // we can use getUint16 using the iterIndex offset. - const dynamicIndex = view.getUint16(iterIndex); - if (dynamicSegments.length > 0) { - dynamicSegments[dynamicSegments.length - 1].right = dynamicIndex; - // Check that right side of segment is greater than the left side - if (dynamicIndex < dynamicSegments[dynamicSegments.length - 1].left) { - throw new Error( - 'dynamic index segment miscalculation: left is greater than right index' - ); - } - } - // Since we do not know where the current dynamic element ends, put a placeholder and update later - const seg: Segment = { - left: dynamicIndex, - right: -1, - }; - dynamicSegments.push(seg); - valuePartition.push(null); - iterIndex += LENGTH_ENCODE_BYTE_SIZE; - } else { - // eslint-disable-next-line no-lonely-if - if (tupleType.constructor === ABIBoolType) { - const before = findBoolLR(this.childTypes, i, -1); - let after = findBoolLR(this.childTypes, i, 1); - - if (before % 8 !== 0) { - throw new Error('expected before bool number mod 8 === 0'); - } - after = Math.min(7, after); - // Parse bool in a byte to multiple byte strings - for (let boolIndex = 0; boolIndex <= after; boolIndex++) { - const boolMask = 0x80 >> boolIndex; - if ((byteString[iterIndex] & boolMask) > 0) { - valuePartition.push(new Uint8Array([128])); - } else { - valuePartition.push(new Uint8Array([0])); - } - } - i += after; - iterIndex += 1; - } else { - const currLen = tupleType.byteLen(); - valuePartition.push(byteString.slice(iterIndex, iterIndex + currLen)); - iterIndex += currLen; - } - } - if (i !== tupleTypes.length - 1 && iterIndex >= byteString.length) { - throw new Error('input byte not enough to decode'); - } - i += 1; - } - if (dynamicSegments.length > 0) { - dynamicSegments[dynamicSegments.length - 1].right = byteString.length; - iterIndex = byteString.length; - } - if (iterIndex < byteString.length) { - throw new Error('input byte not fully consumed'); - } - - // Check segment indices are valid - // If the dynamic segment are not consecutive and well-ordered, we return error - for (let j = 0; j < dynamicSegments.length; j++) { - const seg = dynamicSegments[j]; - if (seg.left > seg.right) { - throw new Error( - 'dynamic segment should display a [l, r] space with l <= r' - ); - } - if ( - j !== dynamicSegments.length - 1 && - seg.right !== dynamicSegments[j + 1].left - ) { - throw new Error('dynamic segment should be consecutive'); - } - } - - // Check dynamic element partitions - let segIndex = 0; - for (let j = 0; j < tupleTypes.length; j++) { - if (tupleTypes[j].isDynamic()) { - valuePartition[j] = byteString.slice( - dynamicSegments[segIndex].left, - dynamicSegments[segIndex].right - ); - segIndex += 1; - } - } - - // Decode each tuple element - const returnValues: ABIValue[] = []; - for (let j = 0; j < tupleTypes.length; j++) { - const valueTi = tupleTypes[j].decode(valuePartition[j]!); - returnValues.push(valueTi); - } - return returnValues; - } - - static parseTupleContent(str: string): string[] { - if (str.length === 0) { - return []; - } - if (str.endsWith(',') || str.startsWith(',')) { - throw new Error('tuple string should not start with comma'); - } - if (str.includes(',,')) { - throw new Error('tuple string should not have consecutive commas'); - } - - const tupleStrings: string[] = []; - let depth = 0; - let word = ''; - - for (const char of str) { - word += char; - if (char === '(') { - depth += 1; - } else if (char === ')') { - depth -= 1; - } else if (char === ',') { - // If the comma is at depth 0, then append the word as token. - if (depth === 0) { - tupleStrings.push(word.slice(0, word.length - 1)); - word = ''; - } - } - } - if (word.length !== 0) { - tupleStrings.push(word); - } - if (depth !== 0) { - throw new Error('tuple string has mismatched parentheses'); - } - return tupleStrings; - } -} - -// compressMultipleBool compresses consecutive bool values into a byte in ABI tuple / array value. -function compressMultipleBool(valueList: ABIValue[]): number { - let res = 0; - if (valueList.length > 8) { - throw new Error('value list passed in should be no greater than length 8'); - } - for (let i = 0; i < valueList.length; i++) { - const boolVal = valueList[i]; - if (typeof boolVal !== 'boolean') { - throw new Error('non-boolean values cannot be compressed into a byte'); - } - if (boolVal) { - res |= 1 << (7 - i); - } - } - return res; -} - -// Assume that the current index on the list of type is an ABI bool type. -// It returns the difference between the current index and the index of the furthest consecutive Bool type. -function findBoolLR(typeList: ABIType[], index: number, delta: -1 | 1): number { - let until = 0; - while (true) { - const curr = index + delta * until; - if (typeList[curr].constructor === ABIBoolType) { - if (curr !== typeList.length - 1 && delta === 1) { - until += 1; - } else if (curr > 0 && delta === -1) { - until += 1; - } else { - break; - } - } else { - until -= 1; - break; - } - } - return until; -} diff --git a/packages/sdk/src/abi/index.ts b/packages/sdk/src/abi/index.ts index 5a8698264..86e6d5d8a 100644 --- a/packages/sdk/src/abi/index.ts +++ b/packages/sdk/src/abi/index.ts @@ -1,4 +1,32 @@ -export * from './abi_type.js' +export type { + ABIType, + ABIUintType, + ABIUfixedType, + ABIAddressType, + ABIBoolType, + ABIByteType, + ABIStringType, + ABITupleType, + ABIStaticArrayType, + ABIDynamicArrayType, + ABIStructType, + ABIValue, +} from '@algorandfoundation/algokit-abi' +export type { ABIStructValue } from '@algorandfoundation/algokit-abi/abi-value.js' +export { + getABIType, + getABITypeName, + encodeABIValue, + decodeABIValue, + parseTupleContent, + ABITypeName, +} from '@algorandfoundation/algokit-abi' + +// Backward compatibility aliases +export type { + ABIStaticArrayType as ABIArrayStaticType, + ABIDynamicArrayType as ABIArrayDynamicType, +} from '@algorandfoundation/algokit-abi' export * from './contract.js' export * from './interface.js' export * from './method.js' diff --git a/packages/sdk/src/abi/method.ts b/packages/sdk/src/abi/method.ts index 353bedeac..c4c13cbc0 100644 --- a/packages/sdk/src/abi/method.ts +++ b/packages/sdk/src/abi/method.ts @@ -1,149 +1,140 @@ -import { genericHash } from '../nacl/naclWrappers.js'; -import { ABIType, ABITupleType } from './abi_type.js'; -import { ABITransactionType, abiTypeIsTransaction } from './transaction.js'; -import { ABIReferenceType, abiTypeIsReference } from './reference.js'; -import { ARC28Event } from './event.js'; +import { ABIType, getABIType, getABITypeName, parseTupleContent } from '@algorandfoundation/algokit-abi' +import { genericHash } from '../nacl/naclWrappers.js' +import { ARC28Event } from './event.js' +import { ABIReferenceType, abiTypeIsReference } from './reference.js' +import { ABITransactionType, abiTypeIsTransaction } from './transaction.js' function parseMethodSignature(signature: string): { - name: string; - args: string[]; - returns: string; + name: string + args: string[] + returns: string } { - const argsStart = signature.indexOf('('); + const argsStart = signature.indexOf('(') if (argsStart === -1) { - throw new Error(`Invalid method signature: ${signature}`); + throw new Error(`Invalid method signature: ${signature}`) } - let argsEnd = -1; - let depth = 0; + let argsEnd = -1 + let depth = 0 for (let i = argsStart; i < signature.length; i++) { - const char = signature[i]; + const char = signature[i] if (char === '(') { - depth += 1; + depth += 1 } else if (char === ')') { if (depth === 0) { // unpaired parenthesis - break; + break } - depth -= 1; + depth -= 1 if (depth === 0) { - argsEnd = i; - break; + argsEnd = i + break } } } if (argsEnd === -1) { - throw new Error(`Invalid method signature: ${signature}`); + throw new Error(`Invalid method signature: ${signature}`) } return { name: signature.slice(0, argsStart), - args: ABITupleType.parseTupleContent( - signature.slice(argsStart + 1, argsEnd) - ), + args: parseTupleContent(signature.slice(argsStart + 1, argsEnd)), returns: signature.slice(argsEnd + 1), - }; + } } export interface ABIMethodArgParams { - type: string; - name?: string; - desc?: string; + type: string + name?: string + desc?: string } export interface ABIMethodReturnParams { - type: string; - desc?: string; + type: string + desc?: string } export interface ABIMethodParams { - name: string; - desc?: string; - args: ABIMethodArgParams[]; - returns: ABIMethodReturnParams; + name: string + desc?: string + args: ABIMethodArgParams[] + returns: ABIMethodReturnParams /** Optional, is it a read-only method (according to [ARC-22](https://arc.algorand.foundation/ARCs/arc-0022)) */ - readonly?: boolean; + readonly?: boolean /** [ARC-28](https://arc.algorand.foundation/ARCs/arc-0028) events that MAY be emitted by this method */ - events?: ARC28Event[]; + events?: ARC28Event[] } -export type ABIArgumentType = ABIType | ABITransactionType | ABIReferenceType; +export type ABIArgumentType = ABIType | ABITransactionType | ABIReferenceType -export type ABIReturnType = ABIType | 'void'; +export type ABIReturnType = ABIType | 'void' export class ABIMethod { - public readonly name: string; - public readonly description?: string; + public readonly name: string + public readonly description?: string public readonly args: Array<{ - type: ABIArgumentType; - name?: string; - description?: string; - }>; + type: ABIArgumentType + name?: string + description?: string + }> - public readonly returns: { type: ABIReturnType; description?: string }; - public readonly events?: ARC28Event[]; - public readonly readonly?: boolean; + public readonly returns: { type: ABIReturnType; description?: string } + public readonly events?: ARC28Event[] + public readonly readonly?: boolean constructor(params: ABIMethodParams) { - if ( - typeof params.name !== 'string' || - typeof params.returns !== 'object' || - !Array.isArray(params.args) - ) { - throw new Error('Invalid ABIMethod parameters'); + if (typeof params.name !== 'string' || typeof params.returns !== 'object' || !Array.isArray(params.args)) { + throw new Error('Invalid ABIMethod parameters') } - this.name = params.name; - this.description = params.desc; + this.name = params.name + this.description = params.desc this.args = params.args.map(({ type, name, desc }) => { if (abiTypeIsTransaction(type) || abiTypeIsReference(type)) { return { type, name, description: desc, - }; + } } return { - type: ABIType.from(type), + type: getABIType(type), name, description: desc, - }; - }); + } + }) this.returns = { - type: - params.returns.type === 'void' - ? params.returns.type - : ABIType.from(params.returns.type), + type: params.returns.type === 'void' ? params.returns.type : getABIType(params.returns.type), description: params.returns.desc, - }; + } - this.events = params.events; - this.readonly = params.readonly; + this.events = params.events + this.readonly = params.readonly } getSignature(): string { - const args = this.args.map((arg) => arg.type.toString()).join(','); - const returns = this.returns.type.toString(); - return `${this.name}(${args})${returns}`; + const args = this.args.map((arg) => (typeof arg.type === 'string' ? arg.type : getABITypeName(arg.type))).join(',') + const returns = typeof this.returns.type === 'string' ? this.returns.type : getABITypeName(this.returns.type) + return `${this.name}(${args})${returns}` } getSelector(): Uint8Array { - const hash = genericHash(this.getSignature()); - return new Uint8Array(hash.slice(0, 4)); + const hash = genericHash(this.getSignature()) + return new Uint8Array(hash.slice(0, 4)) } txnCount(): number { - let count = 1; + let count = 1 for (const arg of this.args) { if (typeof arg.type === 'string' && abiTypeIsTransaction(arg.type)) { - count += 1; + count += 1 } } - return count; + return count } toJSON(): ABIMethodParams { @@ -151,50 +142,41 @@ export class ABIMethod { name: this.name, desc: this.description, args: this.args.map(({ type, name, description }) => ({ - type: type.toString(), + type: typeof type === 'string' ? type : getABITypeName(type), name, desc: description, })), returns: { - type: this.returns.type.toString(), + type: typeof this.returns.type === 'string' ? this.returns.type : getABITypeName(this.returns.type), desc: this.returns.description, }, events: this.events, readonly: this.readonly, - }; + } } static fromSignature(signature: string): ABIMethod { - const { name, args, returns } = parseMethodSignature(signature); + const { name, args, returns } = parseMethodSignature(signature) return new ABIMethod({ name, args: args.map((arg) => ({ type: arg })), returns: { type: returns }, - }); + }) } } export function getMethodByName(methods: ABIMethod[], name: string): ABIMethod { - if ( - methods === null || - !Array.isArray(methods) || - !methods.every((item) => item instanceof ABIMethod) - ) - throw new Error('Methods list provided is null or not the correct type'); - - const filteredMethods = methods.filter((m: ABIMethod) => m.name === name); + if (methods === null || !Array.isArray(methods) || !methods.every((item) => item instanceof ABIMethod)) + throw new Error('Methods list provided is null or not the correct type') + + const filteredMethods = methods.filter((m: ABIMethod) => m.name === name) if (filteredMethods.length > 1) throw new Error( - `found ${ - filteredMethods.length - } methods with the same name ${filteredMethods - .map((m: ABIMethod) => m.getSignature()) - .join(',')}` - ); + `found ${filteredMethods.length} methods with the same name ${filteredMethods.map((m: ABIMethod) => m.getSignature()).join(',')}`, + ) - if (filteredMethods.length === 0) - throw new Error(`found 0 methods with the name ${name}`); + if (filteredMethods.length === 0) throw new Error(`found 0 methods with the name ${name}`) - return filteredMethods[0]; + return filteredMethods[0] } diff --git a/src/transaction/legacy-bridge.ts b/src/transaction/legacy-bridge.ts index bfa5cb384..d81455f4d 100644 --- a/src/transaction/legacy-bridge.ts +++ b/src/transaction/legacy-bridge.ts @@ -1,7 +1,7 @@ import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { BoxReference as TransactBoxReference, Transaction } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIMethod } from '@algorandfoundation/sdk' +import { ABIMethod, abiTypeIsTransaction } from '@algorandfoundation/sdk' import { AlgorandClientTransactionCreator } from '../types/algorand-client-transaction-creator' import { AlgorandClientTransactionSender } from '../types/algorand-client-transaction-sender' import { ABIAppCallArgs, BoxIdentifier as LegacyBoxIdentifier, BoxReference as LegacyBoxReference, RawAppCallArgs } from '../types/app' @@ -27,9 +27,10 @@ import { SendTransactionParams, SendTransactionResult, TransactionNote, + TransactionToSign, TransactionWrapper, } from '../types/transaction' -import { encodeLease, encodeTransactionNote, getSenderAddress, getSenderTransactionSigner } from './transaction' +import { TransactionWithSigner, encodeLease, encodeTransactionNote, getSenderAddress, getSenderTransactionSigner } from './transaction' /** @deprecated Bridges between legacy `sendTransaction` behaviour and new `AlgorandClient` behaviour. */ export async function legacySendTransactionBridge( @@ -135,24 +136,30 @@ export async function legacySendAppTransactionBridge< */ export async function _getAppArgsForABICall(args: ABIAppCallArgs, from: SendTransactionFrom) { const signer = getSenderTransactionSigner(from) + const methodArgs = await Promise.all( - ('methodArgs' in args ? args.methodArgs : args)?.map(async (a, index) => { + args.methodArgs.map(async (a, index) => { if (a === undefined) { throw new Error(`Argument at position ${index} does not have a value`) } if (typeof a !== 'object') { return a } - // Handle the various forms of transactions to wrangle them for ATC - return 'txn' in a - ? a - : a instanceof Promise - ? { txn: (await a).transaction, signer } - : 'transaction' in a - ? { txn: a.transaction, signer: 'signer' in a ? getSenderTransactionSigner(a.signer) : signer } - : 'type' in a - ? { txn: a, signer } - : a + + // Handle transaction args separately to avoid conflicts with ABIStructValue + const abiArgumentType = args.method.args.at(index)!.type + if (abiTypeIsTransaction(abiArgumentType)) { + const t = a as TransactionWithSigner | TransactionToSign | Transaction | Promise | SendTransactionResult + return 'txn' in t + ? t + : t instanceof Promise + ? { txn: (await t).transaction, signer } + : 'transaction' in t + ? { txn: t.transaction, signer: 'signer' in t ? getSenderTransactionSigner(t.signer) : signer } + : { txn: t, signer } + } + + return a as algosdk.ABIValue }), ) return { diff --git a/src/transaction/transaction.spec.ts b/src/transaction/transaction.spec.ts index 874ac835f..ba76a6ef5 100644 --- a/src/transaction/transaction.spec.ts +++ b/src/transaction/transaction.spec.ts @@ -1,6 +1,6 @@ import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIMethod, ABIType, Account, Address } from '@algorandfoundation/sdk' +import { ABIMethod, Account, Address } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterAll, beforeAll, beforeEach, describe, expect, test } from 'vitest' import { APP_SPEC as nestedContractAppSpec } from '../../tests/example-contracts/client/TestContractClient' @@ -1225,11 +1225,11 @@ describe('Resource population: meta', () => { describe('abi return', () => { // eslint-disable-next-line @typescript-eslint/no-explicit-any const getABIResult = (type: string, value: any) => { - const abiType = ABIType.from(type) + const abiType = algosdk.getABIType(type) const result = { method: new ABIMethod({ name: '', args: [], returns: { type: type } }), - rawReturnValue: abiType.encode(value), - returnValue: abiType.decode(abiType.encode(value)), + rawReturnValue: algosdk.encodeABIValue(abiType, value), + returnValue: algosdk.decodeABIValue(abiType, algosdk.encodeABIValue(abiType, value)), txID: '', } as algosdk.ABIResult return getABIReturnValue(result, abiType) diff --git a/src/transactions/method-call.ts b/src/transactions/method-call.ts index 74e5280ba..c31f726d3 100644 --- a/src/transactions/method-call.ts +++ b/src/transactions/method-call.ts @@ -2,14 +2,14 @@ import { OnApplicationComplete, Transaction, TransactionType } from '@algorandfo import { ABIMethod, ABIReferenceType, - ABITupleType, ABIType, - ABIUintType, ABIValue, + ABITypeName, Address, TransactionSigner, abiTypeIsReference, abiTypeIsTransaction, + encodeABIValue, } from '@algorandfoundation/sdk' import { TransactionWithSigner } from '../transaction' import { AppManager } from '../types/app-manager' @@ -335,7 +335,7 @@ function encodeMethodArguments( assetReferences, ) - abiTypes.push(new ABIUintType(8)) + abiTypes.push({ name: ABITypeName.Uint, bitSize: 8 }) abiValues.push(foreignIndex) } else { throw new Error(`Invalid reference value for ${referenceType}: ${argValue}`) @@ -374,7 +374,7 @@ function encodeArgsIndividually(abiTypes: ABIType[], abiValues: ABIValue[]): Uin for (let i = 0; i < abiTypes.length; i++) { const abiType = abiTypes[i] const abiValue = abiValues[i] - const encoded = abiType.encode(abiValue) + const encoded = encodeABIValue(abiType, abiValue) encodedArgs.push(encoded) } @@ -397,9 +397,9 @@ function encodeArgsWithTuplePacking(abiTypes: ABIType[], abiValues: ABIValue[]): const remainingAbiValues = abiValues.slice(ARGS_TUPLE_PACKING_THRESHOLD) if (remainingAbiTypes.length > 0) { - const tupleType = new ABITupleType(remainingAbiTypes) + const tupleType = { name: ABITypeName.Tuple as const, childTypes: remainingAbiTypes } const tupleValue = remainingAbiValues - const tupleEncoded = tupleType.encode(tupleValue) + const tupleEncoded = encodeABIValue(tupleType, tupleValue) encodedArgs.push(tupleEncoded) } diff --git a/src/types/app-arc56.ts b/src/types/app-arc56.ts index 20d8b2acd..61c09b5e2 100644 --- a/src/types/app-arc56.ts +++ b/src/types/app-arc56.ts @@ -28,11 +28,11 @@ export class Arc56Method extends algosdk.ABIMethod { super(method) this.args = method.args.map((arg) => ({ ...arg, - type: algosdk.abiTypeIsTransaction(arg.type) || algosdk.abiTypeIsReference(arg.type) ? arg.type : algosdk.ABIType.from(arg.type), + type: algosdk.abiTypeIsTransaction(arg.type) || algosdk.abiTypeIsReference(arg.type) ? arg.type : algosdk.getABIType(arg.type), })) this.returns = { ...this.method.returns, - type: this.method.returns.type === 'void' ? 'void' : algosdk.ABIType.from(this.method.returns.type), + type: this.method.returns.type === 'void' ? 'void' : algosdk.getABIType(this.method.returns.type), } } @@ -50,15 +50,16 @@ export function getABITupleTypeFromABIStructDefinition( struct: StructField[], structs: Record, ): algosdk.ABITupleType { - return new algosdk.ABITupleType( - struct.map((v) => + return { + name: algosdk.ABITypeName.Tuple, + childTypes: struct.map((v) => typeof v.type === 'string' ? structs[v.type] ? getABITupleTypeFromABIStructDefinition(structs[v.type], structs) - : algosdk.ABIType.from(v.type) + : algosdk.getABIType(v.type) : getABITupleTypeFromABIStructDefinition(v.type, structs), ), - ) + } } /** @@ -81,7 +82,7 @@ export function getABIStructFromABITuple, ): Uint8Array { if (typeof value === 'object' && value instanceof Uint8Array) return value - if (type === 'AVMUint64') return algosdk.ABIType.from('uint64').encode(value as bigint | number) + if (type === 'AVMUint64') return algosdk.encodeABIValue(algosdk.getABIType('uint64'), value as bigint | number) if (type === 'AVMBytes' || type === 'AVMString') { if (typeof value === 'string') return Buffer.from(value, 'utf-8') if (typeof value !== 'object' || !(value instanceof Uint8Array)) throw new Error(`Expected bytes value for ${type}, but got ${value}`) @@ -171,12 +173,12 @@ export function getABIEncodedValue( if (structs[type]) { const tupleType = getABITupleTypeFromABIStructDefinition(structs[type], structs) if (Array.isArray(value)) { - tupleType.encode(value as algosdk.ABIValue[]) + return algosdk.encodeABIValue(tupleType, value as algosdk.ABIValue[]) } else { - return tupleType.encode(getABITupleFromABIStruct(value as ABIStruct, structs[type], structs)) + return algosdk.encodeABIValue(tupleType, getABITupleFromABIStruct(value as ABIStruct, structs[type], structs)) } } - return algosdk.ABIType.from(type).encode(value as algosdk.ABIValue) + return algosdk.encodeABIValue(algosdk.getABIType(type), value as algosdk.ABIValue) } /** @@ -231,13 +233,13 @@ export function getArc56ReturnValue { const expectedValue = 1234524352 await client.call({ method: 'set_box', - methodArgs: [boxName1, new ABIUintType(32).encode(expectedValue)], + methodArgs: [boxName1, algosdk.encodeABIValue(algosdk.getABIType("uint32"), expectedValue)], boxes: [boxName1], }) - const boxes = await client.getBoxValuesFromABIType(new ABIUintType(32), (n) => n.nameBase64 === boxName1Base64) - const box1AbiValue = await client.getBoxValueFromABIType(boxName1, new ABIUintType(32)) + const boxes = await client.getBoxValuesFromABIType(algosdk.getABIType("uint32"), (n) => n.nameBase64 === boxName1Base64) + const box1AbiValue = await client.getBoxValueFromABIType(boxName1, algosdk.getABIType("uint32")) expect(boxes.length).toBe(1) const [value] = boxes expect(Number(value.value)).toBe(expectedValue) @@ -1020,7 +1020,7 @@ describe('app-client', () => { // Generate all valid ABI uint bit lengths Array.from({ length: 64 }, (_, i) => (i + 1) * 8), )('correctly decodes a uint%i', (bitLength) => { - const encoded = new ABIUintType(bitLength).encode(1) + const encoded = algosdk.encodeABIValue(algosdk.getABIType(`uint${bitLength}`), 1) const decoded = getABIDecodedValue(encoded, `uint${bitLength}`, {}) if (bitLength < 53) { diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index b9772610a..9244f3d46 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -716,11 +716,11 @@ describe('ARC32: app-factory-and-app-client', () => { const expectedValue = 1234524352 await client.send.call({ method: 'set_box', - args: [boxName1, new ABIUintType(32).encode(expectedValue)], + args: [boxName1, algosdk.encodeABIValue(algosdk.getABIType("uint32"), expectedValue)], boxReferences: [boxName1], }) - const boxes = await client.getBoxValuesFromABIType(new ABIUintType(32), (n) => n.nameBase64 === boxName1Base64) - const box1AbiValue = await client.getBoxValueFromABIType(boxName1, new ABIUintType(32)) + const boxes = await client.getBoxValuesFromABIType(algosdk.getABIType("uint32"), (n) => n.nameBase64 === boxName1Base64) + const box1AbiValue = await client.getBoxValueFromABIType(boxName1, algosdk.getABIType("uint32")) expect(boxes.length).toBe(1) const [value] = boxes expect(Number(value.value)).toBe(expectedValue) diff --git a/src/types/app-manager.ts b/src/types/app-manager.ts index 30dccdde7..999d5a86b 100644 --- a/src/types/app-manager.ts +++ b/src/types/app-manager.ts @@ -332,7 +332,7 @@ export class AppManager { public async getBoxValueFromABIType(request: BoxValueRequestParams): Promise { const { appId, boxName, type } = request const value = await this.getBoxValue(appId, boxName) - return type.decode(value) + return algosdk.decodeABIValue(type, value) } /** @@ -456,7 +456,7 @@ export class AppManager { } abiResult.rawReturnValue = new Uint8Array(lastLog.slice(4)) - abiResult.returnValue = method.returns.type.decode(abiResult.rawReturnValue) + abiResult.returnValue = algosdk.decodeABIValue(method.returns.type, abiResult.rawReturnValue) } catch (err) { abiResult.decodeError = err as Error } diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index fb3de0b74..0e91868a0 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -52,7 +52,7 @@ export function arc32ToArc56(appSpec: AppSpec): Arc56Contract { return { source: defaultArg.source === 'constant' ? 'literal' : defaultArg.source === 'global-state' ? 'global' : 'local', data: Buffer.from( - typeof defaultArg.data === 'number' ? algosdk.ABIType.from('uint64').encode(defaultArg.data) : defaultArg.data, + typeof defaultArg.data === 'number' ? algosdk.encodeABIValue(algosdk.getABIType('uint64'), defaultArg.data) : defaultArg.data, ).toString('base64'), type: type === 'string' ? 'AVMString' : type, } diff --git a/src/util.spec.ts b/src/util.spec.ts index 80d97fbe4..78a9d48e6 100644 --- a/src/util.spec.ts +++ b/src/util.spec.ts @@ -1,14 +1,13 @@ import { convertAbiByteArrays as convertAbiByteArrays } from './util' import { describe, it, expect } from 'vitest' -import { ABIValue, ABIByteType, ABIArrayStaticType, ABIArrayDynamicType, ABITupleType, ABIBoolType, ABIUintType } from '@algorandfoundation/sdk' // Adjust this import path +import { ABIValue, getABIType, ABITypeName } from '@algorandfoundation/sdk' // Adjust this import path describe('convertAbiByteArrays', () => { describe('Basic byte arrays', () => { it('should convert a simple byte array to Uint8Array', () => { // Create a static array of bytes: byte[4] - const byteType = new ABIByteType() - const arrayType = new ABIArrayStaticType(byteType, 4) + const arrayType = getABIType('byte[4]') const value = [1, 2, 3, 4] const result = convertAbiByteArrays(value, arrayType) @@ -19,8 +18,7 @@ describe('convertAbiByteArrays', () => { it('should handle dynamic byte arrays', () => { // Create a dynamic array of bytes: byte[] - const byteType = new ABIByteType() - const arrayType = new ABIArrayDynamicType(byteType) + const arrayType = getABIType('byte[]') const value = [10, 20, 30, 40, 50] const result = convertAbiByteArrays(value, arrayType) @@ -30,8 +28,7 @@ describe('convertAbiByteArrays', () => { }) it('should return existing Uint8Array as is', () => { - const byteType = new ABIByteType() - const arrayType = new ABIArrayStaticType(byteType, 3) + const arrayType = getABIType('byte[3]') const value = new Uint8Array([5, 6, 7]) const result = convertAbiByteArrays(value, arrayType) @@ -43,9 +40,7 @@ describe('convertAbiByteArrays', () => { describe('Nested arrays', () => { it('should convert byte arrays inside arrays', () => { // Create byte[2][] - const byteType = new ABIByteType() - const innerArrayType = new ABIArrayStaticType(byteType, 2) - const outerArrayType = new ABIArrayDynamicType(innerArrayType) + const outerArrayType = getABIType('byte[2][]') const value = [ [1, 2], @@ -68,8 +63,7 @@ describe('convertAbiByteArrays', () => { it('should not convert non-byte arrays', () => { // Create uint8[3] - const uintType = new ABIUintType(8) - const arrayType = new ABIArrayStaticType(uintType, 3) + const arrayType = getABIType('uint8[3]') const value = [1, 2, 3] const result = convertAbiByteArrays(value, arrayType) @@ -82,12 +76,7 @@ describe('convertAbiByteArrays', () => { describe('Tuple tests', () => { it('should handle tuples with byte arrays', () => { // Create (byte[2],bool,byte[3]) - const byteType = new ABIByteType() - const byteArray2Type = new ABIArrayStaticType(byteType, 2) - const byteArray3Type = new ABIArrayStaticType(byteType, 3) - const boolType = new ABIBoolType() - - const tupleType = new ABITupleType([byteArray2Type, boolType, byteArray3Type]) + const tupleType = getABIType('(byte[2],bool,byte[3])') const value = [[1, 2], true, [3, 4, 5]] const result = convertAbiByteArrays(value, tupleType) as ABIValue[] @@ -105,13 +94,7 @@ describe('convertAbiByteArrays', () => { it('should handle nested tuples with byte arrays', () => { // Create (byte[2],(byte[1],bool)) - const byteType = new ABIByteType() - const byteArray2Type = new ABIArrayStaticType(byteType, 2) - const byteArray1Type = new ABIArrayStaticType(byteType, 1) - const boolType = new ABIBoolType() - - const innerTupleType = new ABITupleType([byteArray1Type, boolType]) - const outerTupleType = new ABITupleType([byteArray2Type, innerTupleType]) + const outerTupleType = getABIType('(byte[2],(byte[1],bool))') const value = [ [1, 2], @@ -137,15 +120,7 @@ describe('convertAbiByteArrays', () => { describe('Complex mixed structures', () => { it('should handle complex nested structures', () => { // Create (byte[2][],uint8,(bool,byte[3])) - const byteType = new ABIByteType() - const byteArray2Type = new ABIArrayStaticType(byteType, 2) - const byteArrayDynType = new ABIArrayDynamicType(byteArray2Type) - const uintType = new ABIUintType(8) - const boolType = new ABIBoolType() - const byteArray3Type = new ABIArrayStaticType(byteType, 3) - - const innerTupleType = new ABITupleType([boolType, byteArray3Type]) - const outerTupleType = new ABITupleType([byteArrayDynType, uintType, innerTupleType]) + const outerTupleType = getABIType('(byte[2][],uint8,(bool,byte[3]))') const value = [ [ @@ -180,8 +155,7 @@ describe('convertAbiByteArrays', () => { describe('Edge cases', () => { it('should handle empty byte arrays', () => { - const byteType = new ABIByteType() - const arrayType = new ABIArrayStaticType(byteType, 0) + const arrayType = getABIType('byte[0]') const value: number[] = [] const result = convertAbiByteArrays(value, arrayType) diff --git a/src/util.ts b/src/util.ts index 99d8a7c3f..09b3c8779 100644 --- a/src/util.ts +++ b/src/util.ts @@ -1,4 +1,12 @@ -import { ABIArrayDynamicType, ABIArrayStaticType, ABIByteType, ABIReturnType, ABITupleType, ABIType, ABIUintType, ABIValue } from '@algorandfoundation/sdk' +import { + ABIReturnType, + ABIType, + ABIValue, + ABITypeName, + getABITypeName, + ABIArrayDynamicType, + ABIArrayStaticType, +} from '@algorandfoundation/sdk' import { APP_PAGE_MAX_SIZE } from './types/app' /** @@ -111,21 +119,21 @@ export const calculateExtraProgramPages = (approvalProgram: Uint8Array, clearSta /** Take a decoded ABI value and convert all byte arrays (including nested ones) from number[] to Uint8Arrays */ export function convertAbiByteArrays(value: ABIValue, type: ABIReturnType): ABIValue { // Return value as is if the type doesn't have any bytes or if it's already an Uint8Array - if (!type.toString().includes('byte') || value instanceof Uint8Array) { + if (typeof type === 'string' || !getABITypeName(type).includes('byte') || value instanceof Uint8Array) { return value } // Handle byte arrays (byte[N] or byte[]) if ( - (type instanceof ABIArrayStaticType || type instanceof ABIArrayDynamicType) && - type.childType instanceof ABIByteType && + (type.name === ABITypeName.StaticArray || type.name === ABITypeName.DynamicArray) && + type.childType.name === ABITypeName.Byte && Array.isArray(value) ) { return new Uint8Array(value as number[]) } // Handle other arrays (for nested structures) - if ((type instanceof ABIArrayStaticType || type instanceof ABIArrayDynamicType) && Array.isArray(value)) { + if ((type.name === ABITypeName.StaticArray || type.name === ABITypeName.DynamicArray) && Array.isArray(value)) { const result = [] for (let i = 0; i < value.length; i++) { result.push(convertAbiByteArrays(value[i], type.childType)) @@ -134,7 +142,7 @@ export function convertAbiByteArrays(value: ABIValue, type: ABIReturnType): ABIV } // Handle tuples (for nested structures) - if (type instanceof ABITupleType && Array.isArray(value)) { + if (type.name === ABITypeName.Tuple && Array.isArray(value)) { const result = [] for (let i = 0; i < value.length && i < type.childTypes.length; i++) { result.push(convertAbiByteArrays(value[i], type.childTypes[i])) @@ -151,14 +159,14 @@ export function convertAbiByteArrays(value: ABIValue, type: ABIReturnType): ABIV */ export const convertABIDecodedBigIntToNumber = (value: ABIValue, type: ABIType): ABIValue => { if (typeof value === 'bigint') { - if (type instanceof ABIUintType) { + if (type.name === ABITypeName.Uint) { return type.bitSize < 53 ? Number(value) : value } else { return value } - } else if (Array.isArray(value) && (type instanceof ABIArrayStaticType || type instanceof ABIArrayDynamicType)) { + } else if (Array.isArray(value) && (type.name === ABITypeName.StaticArray || type.name === ABITypeName.DynamicArray)) { return value.map((v) => convertABIDecodedBigIntToNumber(v, type.childType)) - } else if (Array.isArray(value) && type instanceof ABITupleType) { + } else if (Array.isArray(value) && type.name === ABITypeName.Tuple) { return value.map((v, i) => convertABIDecodedBigIntToNumber(v, type.childTypes[i])) } else { return value From 86ac9d53f9b543cd8515904f97a8af159d0a36f3 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 14 Nov 2025 12:51:38 +1000 Subject: [PATCH 02/43] wip --- MIGRATION-NOTES.md | 4 + packages/abi/src/abi-type.ts | 3 + packages/abi/src/index.ts | 16 +- packages/sdk/package.json | 6 +- packages/sdk/src/abi/contract.ts | 57 -- packages/sdk/src/abi/event.ts | 16 - packages/sdk/src/abi/index.ts | 34 -- packages/sdk/src/abi/interface.ts | 35 -- packages/sdk/src/abi/method.ts | 182 ------ packages/sdk/src/abi/reference.ts | 24 - packages/sdk/src/abi/transaction.ts | 72 --- packages/sdk/src/composer.ts | 26 - packages/sdk/src/index.ts | 2 - src/transaction/transaction.ts | 32 +- .../algorand-client-transaction-sender.ts | 3 +- src/types/app-arc56.ts | 524 ------------------ src/types/app-client.ts | 28 +- src/types/app-factory-and-client.spec.ts | 16 +- src/types/app-manager.ts | 45 +- src/types/app-spec.ts | 59 +- src/types/app.ts | 13 +- src/types/composer.spec.ts | 6 +- src/types/composer.ts | 8 +- src/types/transaction.ts | 2 +- src/util.spec.ts | 327 +++++------ src/util.ts | 66 --- .../client/TestContractClient.ts | 4 +- 27 files changed, 288 insertions(+), 1322 deletions(-) delete mode 100644 packages/sdk/src/abi/contract.ts delete mode 100644 packages/sdk/src/abi/event.ts delete mode 100644 packages/sdk/src/abi/index.ts delete mode 100644 packages/sdk/src/abi/interface.ts delete mode 100644 packages/sdk/src/abi/method.ts delete mode 100644 packages/sdk/src/abi/reference.ts delete mode 100644 packages/sdk/src/abi/transaction.ts delete mode 100644 packages/sdk/src/composer.ts delete mode 100644 src/types/app-arc56.ts diff --git a/MIGRATION-NOTES.md b/MIGRATION-NOTES.md index d9bdef548..a7fb363d1 100644 --- a/MIGRATION-NOTES.md +++ b/MIGRATION-NOTES.md @@ -37,4 +37,8 @@ A collection of random notes pop up during the migration process. - ABIStruct can't be constructed from string. - Bring the unhappy path tests over (fail to encode/decode) - TODO: PD - revert this: the names are ABIStaticArrayType and ABIDynamicArrayType (not ABIArrayStaticType and ABIArrayDynamicType) + - ABIResult vs ABIReturn + - TestContractClient was updated + - TODO: PD - confirm Converts `bigint`'s for Uint's < 64 to `number` for easier use. + - TODO: PD - look into convertAbiByteArrays - Make sure that the python utils also sort resources during resource population diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 37788a1d9..ec3e0f91e 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -577,8 +577,11 @@ export type ABIStructType = { structFields: ABIStructField[] } +/** Information about a single field in a struct */ export type ABIStructField = { + /** The name of the struct field */ name: string + /** The type of the struct field's value */ type: ABIType | ABIStructField[] } diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index 54a3174c8..5cace5ba5 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -6,7 +6,7 @@ export { getABIMethodSelector, getABIMethodSignature, } from './abi-method' -export type { ABIMethod, ABIReferenceType, ABIReturn } from './abi-method' +export type { ABIMethod, ABIReferenceType, ABIReturn, ABIReturnType } from './abi-method' export { ABITypeName, decodeABIValue, encodeABIValue, encodeTuple, getABIType, getABITypeName, parseTupleContent } from './abi-type' export type { ABIAddressType, @@ -22,3 +22,17 @@ export type { ABIUintType, } from './abi-type' export type { ABIReferenceValue, ABIValue } from './abi-value' +export type { + AVMBytes, + AVMString, + AVMType, + AVMUint64, + Arc56Contract, + Arc56Method, + Event, + ProgramSourceInfo, + StorageKey, + StorageMap, + StructField, + StructName, +} from './arc56-contract' diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 7b4bc199e..56f80d0df 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -20,9 +20,7 @@ "audit": "better-npm-audit audit", "pre-commit": "run-s check-types lint:fix audit format test" }, - "dependencies": { - "@algorandfoundation/algokit-abi": "workspace:*" - }, + "dependencies": {}, "peerDependencies": {}, "devDependencies": {} -} \ No newline at end of file +} diff --git a/packages/sdk/src/abi/contract.ts b/packages/sdk/src/abi/contract.ts deleted file mode 100644 index a3613ff08..000000000 --- a/packages/sdk/src/abi/contract.ts +++ /dev/null @@ -1,57 +0,0 @@ -import { ABIMethod, ABIMethodParams, getMethodByName } from './method.js'; -import { ARC28Event } from './event.js'; - -export interface ABIContractNetworkInfo { - appID: number; -} - -export interface ABIContractNetworks { - [network: string]: ABIContractNetworkInfo; -} - -export interface ABIContractParams { - name: string; - desc?: string; - networks?: ABIContractNetworks; - methods: ABIMethodParams[]; - events?: ARC28Event[]; -} - -export class ABIContract { - public readonly name: string; - public readonly description?: string; - public readonly networks: ABIContractNetworks; - public readonly methods: ABIMethod[]; - /** [ARC-28](https://arc.algorand.foundation/ARCs/arc-0028) events that MAY be emitted by this contract */ - public readonly events?: ARC28Event[]; - - constructor(params: ABIContractParams) { - if ( - typeof params.name !== 'string' || - !Array.isArray(params.methods) || - (params.networks && typeof params.networks !== 'object') - ) { - throw new Error('Invalid ABIContract parameters'); - } - - this.name = params.name; - this.description = params.desc; - this.networks = params.networks ? { ...params.networks } : {}; - this.methods = params.methods.map((method) => new ABIMethod(method)); - this.events = params.events; - } - - toJSON(): ABIContractParams { - return { - name: this.name, - desc: this.description, - networks: this.networks, - methods: this.methods.map((method) => method.toJSON()), - events: this.events, - }; - } - - getMethodByName(name: string): ABIMethod { - return getMethodByName(this.methods, name); - } -} diff --git a/packages/sdk/src/abi/event.ts b/packages/sdk/src/abi/event.ts deleted file mode 100644 index 0f8652607..000000000 --- a/packages/sdk/src/abi/event.ts +++ /dev/null @@ -1,16 +0,0 @@ -/** [ARC-28](https://arc.algorand.foundation/ARCs/arc-0028) event description */ -export interface ARC28Event { - /** The name of the event */ - name: string; - /** Optional, user-friendly description for the event */ - desc?: string; - /** The arguments of the event, in order */ - args: Array<{ - /** The type of the argument */ - type: string; - /** Optional, user-friendly name for the argument */ - name?: string; - /** Optional, user-friendly description for the argument */ - desc?: string; - }>; -} diff --git a/packages/sdk/src/abi/index.ts b/packages/sdk/src/abi/index.ts deleted file mode 100644 index 86e6d5d8a..000000000 --- a/packages/sdk/src/abi/index.ts +++ /dev/null @@ -1,34 +0,0 @@ -export type { - ABIType, - ABIUintType, - ABIUfixedType, - ABIAddressType, - ABIBoolType, - ABIByteType, - ABIStringType, - ABITupleType, - ABIStaticArrayType, - ABIDynamicArrayType, - ABIStructType, - ABIValue, -} from '@algorandfoundation/algokit-abi' -export type { ABIStructValue } from '@algorandfoundation/algokit-abi/abi-value.js' -export { - getABIType, - getABITypeName, - encodeABIValue, - decodeABIValue, - parseTupleContent, - ABITypeName, -} from '@algorandfoundation/algokit-abi' - -// Backward compatibility aliases -export type { - ABIStaticArrayType as ABIArrayStaticType, - ABIDynamicArrayType as ABIArrayDynamicType, -} from '@algorandfoundation/algokit-abi' -export * from './contract.js' -export * from './interface.js' -export * from './method.js' -export * from './reference.js' -export * from './transaction.js' diff --git a/packages/sdk/src/abi/interface.ts b/packages/sdk/src/abi/interface.ts deleted file mode 100644 index 6dc91d2a0..000000000 --- a/packages/sdk/src/abi/interface.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { ABIMethod, ABIMethodParams, getMethodByName } from './method.js'; - -export interface ABIInterfaceParams { - name: string; - desc?: string; - methods: ABIMethodParams[]; -} - -export class ABIInterface { - public readonly name: string; - public readonly description?: string; - public readonly methods: ABIMethod[]; - - constructor(params: ABIInterfaceParams) { - if (typeof params.name !== 'string' || !Array.isArray(params.methods)) { - throw new Error('Invalid ABIInterface parameters'); - } - - this.name = params.name; - this.description = params.desc; - this.methods = params.methods.map((method) => new ABIMethod(method)); - } - - toJSON(): ABIInterfaceParams { - return { - name: this.name, - desc: this.description, - methods: this.methods.map((method) => method.toJSON()), - }; - } - - getMethodByName(name: string): ABIMethod { - return getMethodByName(this.methods, name); - } -} diff --git a/packages/sdk/src/abi/method.ts b/packages/sdk/src/abi/method.ts deleted file mode 100644 index c4c13cbc0..000000000 --- a/packages/sdk/src/abi/method.ts +++ /dev/null @@ -1,182 +0,0 @@ -import { ABIType, getABIType, getABITypeName, parseTupleContent } from '@algorandfoundation/algokit-abi' -import { genericHash } from '../nacl/naclWrappers.js' -import { ARC28Event } from './event.js' -import { ABIReferenceType, abiTypeIsReference } from './reference.js' -import { ABITransactionType, abiTypeIsTransaction } from './transaction.js' - -function parseMethodSignature(signature: string): { - name: string - args: string[] - returns: string -} { - const argsStart = signature.indexOf('(') - if (argsStart === -1) { - throw new Error(`Invalid method signature: ${signature}`) - } - - let argsEnd = -1 - let depth = 0 - for (let i = argsStart; i < signature.length; i++) { - const char = signature[i] - - if (char === '(') { - depth += 1 - } else if (char === ')') { - if (depth === 0) { - // unpaired parenthesis - break - } - - depth -= 1 - if (depth === 0) { - argsEnd = i - break - } - } - } - - if (argsEnd === -1) { - throw new Error(`Invalid method signature: ${signature}`) - } - - return { - name: signature.slice(0, argsStart), - args: parseTupleContent(signature.slice(argsStart + 1, argsEnd)), - returns: signature.slice(argsEnd + 1), - } -} - -export interface ABIMethodArgParams { - type: string - name?: string - desc?: string -} - -export interface ABIMethodReturnParams { - type: string - desc?: string -} - -export interface ABIMethodParams { - name: string - desc?: string - args: ABIMethodArgParams[] - returns: ABIMethodReturnParams - /** Optional, is it a read-only method (according to [ARC-22](https://arc.algorand.foundation/ARCs/arc-0022)) */ - readonly?: boolean - /** [ARC-28](https://arc.algorand.foundation/ARCs/arc-0028) events that MAY be emitted by this method */ - events?: ARC28Event[] -} - -export type ABIArgumentType = ABIType | ABITransactionType | ABIReferenceType - -export type ABIReturnType = ABIType | 'void' - -export class ABIMethod { - public readonly name: string - public readonly description?: string - public readonly args: Array<{ - type: ABIArgumentType - name?: string - description?: string - }> - - public readonly returns: { type: ABIReturnType; description?: string } - public readonly events?: ARC28Event[] - public readonly readonly?: boolean - - constructor(params: ABIMethodParams) { - if (typeof params.name !== 'string' || typeof params.returns !== 'object' || !Array.isArray(params.args)) { - throw new Error('Invalid ABIMethod parameters') - } - - this.name = params.name - this.description = params.desc - this.args = params.args.map(({ type, name, desc }) => { - if (abiTypeIsTransaction(type) || abiTypeIsReference(type)) { - return { - type, - name, - description: desc, - } - } - - return { - type: getABIType(type), - name, - description: desc, - } - }) - this.returns = { - type: params.returns.type === 'void' ? params.returns.type : getABIType(params.returns.type), - description: params.returns.desc, - } - - this.events = params.events - this.readonly = params.readonly - } - - getSignature(): string { - const args = this.args.map((arg) => (typeof arg.type === 'string' ? arg.type : getABITypeName(arg.type))).join(',') - const returns = typeof this.returns.type === 'string' ? this.returns.type : getABITypeName(this.returns.type) - return `${this.name}(${args})${returns}` - } - - getSelector(): Uint8Array { - const hash = genericHash(this.getSignature()) - return new Uint8Array(hash.slice(0, 4)) - } - - txnCount(): number { - let count = 1 - for (const arg of this.args) { - if (typeof arg.type === 'string' && abiTypeIsTransaction(arg.type)) { - count += 1 - } - } - return count - } - - toJSON(): ABIMethodParams { - return { - name: this.name, - desc: this.description, - args: this.args.map(({ type, name, description }) => ({ - type: typeof type === 'string' ? type : getABITypeName(type), - name, - desc: description, - })), - returns: { - type: typeof this.returns.type === 'string' ? this.returns.type : getABITypeName(this.returns.type), - desc: this.returns.description, - }, - events: this.events, - readonly: this.readonly, - } - } - - static fromSignature(signature: string): ABIMethod { - const { name, args, returns } = parseMethodSignature(signature) - - return new ABIMethod({ - name, - args: args.map((arg) => ({ type: arg })), - returns: { type: returns }, - }) - } -} - -export function getMethodByName(methods: ABIMethod[], name: string): ABIMethod { - if (methods === null || !Array.isArray(methods) || !methods.every((item) => item instanceof ABIMethod)) - throw new Error('Methods list provided is null or not the correct type') - - const filteredMethods = methods.filter((m: ABIMethod) => m.name === name) - if (filteredMethods.length > 1) - throw new Error( - `found ${filteredMethods.length} methods with the same name ${filteredMethods.map((m: ABIMethod) => m.getSignature()).join(',')}`, - ) - - if (filteredMethods.length === 0) throw new Error(`found 0 methods with the name ${name}`) - - return filteredMethods[0] -} diff --git a/packages/sdk/src/abi/reference.ts b/packages/sdk/src/abi/reference.ts deleted file mode 100644 index c3e023464..000000000 --- a/packages/sdk/src/abi/reference.ts +++ /dev/null @@ -1,24 +0,0 @@ -export enum ABIReferenceType { - /** - * Account reference type - */ - account = 'account', - - /** - * Application reference type - */ - application = 'application', - - /** - * Asset reference type - */ - asset = 'asset', -} - -export function abiTypeIsReference(type: any): type is ABIReferenceType { - return ( - type === ABIReferenceType.account || - type === ABIReferenceType.application || - type === ABIReferenceType.asset - ); -} diff --git a/packages/sdk/src/abi/transaction.ts b/packages/sdk/src/abi/transaction.ts deleted file mode 100644 index 20e5ef115..000000000 --- a/packages/sdk/src/abi/transaction.ts +++ /dev/null @@ -1,72 +0,0 @@ -import type { Transaction } from '@algorandfoundation/algokit-transact' -import { TransactionType } from '@algorandfoundation/algokit-transact' - -export enum ABITransactionType { - /** - * Any transaction type - */ - any = 'txn', - - /** - * Payment transaction type - */ - pay = 'pay', - - /** - * Key registration transaction type - */ - keyreg = 'keyreg', - - /** - * Asset configuration transaction type - */ - acfg = 'acfg', - - /** - * Asset transfer transaction type - */ - axfer = 'axfer', - - /** - * Asset freeze transaction type - */ - afrz = 'afrz', - - /** - * Application transaction type - */ - appl = 'appl', -} - -export function abiTypeIsTransaction(type: any): type is ABITransactionType { - return ( - type === ABITransactionType.any || - type === ABITransactionType.pay || - type === ABITransactionType.keyreg || - type === ABITransactionType.acfg || - type === ABITransactionType.axfer || - type === ABITransactionType.afrz || - type === ABITransactionType.appl - ) -} - -export function abiCheckTransactionType(type: ABITransactionType, txn: Transaction): boolean { - if (type === ABITransactionType.any) { - return true - } - - // TODO: check this conversion - // Map ABI transaction types to numeric TransactionType enum - const typeMap: Record = { - [ABITransactionType.any]: null, - [ABITransactionType.pay]: TransactionType.Payment, - [ABITransactionType.keyreg]: TransactionType.KeyRegistration, - [ABITransactionType.acfg]: TransactionType.AssetConfig, - [ABITransactionType.axfer]: TransactionType.AssetTransfer, - [ABITransactionType.afrz]: TransactionType.AssetFreeze, - [ABITransactionType.appl]: TransactionType.AppCall, - } - - const expectedType = typeMap[type] - return expectedType !== null && txn.type === expectedType -} diff --git a/packages/sdk/src/composer.ts b/packages/sdk/src/composer.ts deleted file mode 100644 index 27c7e349b..000000000 --- a/packages/sdk/src/composer.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { PendingTransactionResponse } from '@algorandfoundation/algokit-algod-client' -import { ABIMethod, ABIValue } from './abi/index.js' - -/** Represents the output from a successful ABI method call. */ -export interface ABIResult { - /** The TxID of the transaction that invoked the ABI method call. */ - txID: string - /** - * The raw bytes of the return value from the ABI method call. This will be empty if the method - * does not return a value (return type "void"). - */ - rawReturnValue: Uint8Array - /** - * The method that was called for this result - */ - method: ABIMethod - /** - * The return value from the ABI method call. This will be undefined if the method does not return - * a value (return type "void"), or if the SDK was unable to decode the returned value. - */ - returnValue?: ABIValue - /** If the SDK was unable to decode a return value, the error will be here. */ - decodeError?: Error - /** The pending transaction information from the method transaction */ - txInfo?: PendingTransactionResponse -} diff --git a/packages/sdk/src/index.ts b/packages/sdk/src/index.ts index 3886cd378..74f43cc8f 100644 --- a/packages/sdk/src/index.ts +++ b/packages/sdk/src/index.ts @@ -71,14 +71,12 @@ export function verifyBytes(bytes: Uint8Array, signature: Uint8Array, addr: stri export const ERROR_MULTISIG_BAD_SENDER = new Error(MULTISIG_BAD_SENDER_ERROR_MSG) export const ERROR_INVALID_MICROALGOS = new Error(convert.INVALID_MICROALGOS_ERROR_MSG) -export * from './abi/index' export { default as generateAccount } from './account' export * from './client' // Export client classes with algosdk-compatible names export { KmdClient as Kmd } from './client/kmd' export { IndexerClient as Indexer } from './client/v2/indexer/index' export * as indexerModels from './client/v2/indexer/models/types' -export * from './composer' export * from './convert' export { Address, decodeAddress, encodeAddress, getApplicationAddress, isValidAddress } from './encoding/address' export { bigIntToBytes, bytesToBigInt } from './encoding/bigint' diff --git a/src/transaction/transaction.ts b/src/transaction/transaction.ts index d5648e323..627eaf6b0 100644 --- a/src/transaction/transaction.ts +++ b/src/transaction/transaction.ts @@ -1,10 +1,9 @@ import { AlgodClient, PendingTransactionResponse, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, Transaction, TransactionType, getTransactionId } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIReturnType, TransactionSigner } from '@algorandfoundation/sdk' +import { TransactionSigner } from '@algorandfoundation/sdk' import { Config } from '../config' import { AlgoAmount } from '../types/amount' -import { ABIReturn } from '../types/app' import { AppCallParams, TransactionComposer } from '../types/composer' import { AdditionalTransactionComposerContext, @@ -20,7 +19,7 @@ import { TransactionWrapper, wrapPendingTransactionResponse, } from '../types/transaction' -import { asJson, convertABIDecodedBigIntToNumber, convertAbiByteArrays, toNumber } from '../util' +import { asJson, toNumber } from '../util' /** Represents an unsigned transactions and a signer that can authorize that transaction. */ export interface TransactionWithSigner { @@ -391,33 +390,6 @@ export const sendTransactionComposer = async function (atcSend: TransactionCompo }) } -/** - * Takes an algosdk `ABIResult` and converts it to an `ABIReturn`. - * Converts `bigint`'s for Uint's < 64 to `number` for easier use. - * @param result The `ABIReturn` - */ -export function getABIReturnValue(result: algosdk.ABIResult, type: ABIReturnType): ABIReturn { - if (result.decodeError) { - return { - decodeError: result.decodeError, - } - } - - const returnValue = convertAbiByteArrays( - result.returnValue !== undefined && result.method.returns.type !== 'void' - ? convertABIDecodedBigIntToNumber(result.returnValue, result.method.returns.type) - : result.returnValue!, - type, - ) - - return { - method: result.method, - rawReturnValue: result.rawReturnValue, - decodeError: undefined, - returnValue, - } -} - /** * @deprecated Use `TransactionComposer` (`algorand.newGroup()`) to construct and send group transactions instead. * diff --git a/src/types/algorand-client-transaction-sender.ts b/src/types/algorand-client-transaction-sender.ts index 665400995..b3d3fad5a 100644 --- a/src/types/algorand-client-transaction-sender.ts +++ b/src/types/algorand-client-transaction-sender.ts @@ -1,3 +1,4 @@ +import { ABIMethod } from '@algorandfoundation/algokit-abi' import { Transaction, getTransactionId } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { Address } from '@algorandfoundation/sdk' @@ -23,7 +24,7 @@ import { } from './composer' import { SendParams, SendSingleTransactionResult } from './transaction' -const getMethodCallForLog = ({ method, args }: { method: algosdk.ABIMethod; args?: unknown[] }) => { +const getMethodCallForLog = ({ method, args }: { method: ABIMethod; args?: unknown[] }) => { return `${method.name}(${(args ?? []).map((a) => typeof a === 'object' ? asJson(a, (k, v) => { diff --git a/src/types/app-arc56.ts b/src/types/app-arc56.ts deleted file mode 100644 index 61c09b5e2..000000000 --- a/src/types/app-arc56.ts +++ /dev/null @@ -1,524 +0,0 @@ -import * as algosdk from '@algorandfoundation/sdk' -import { convertAbiByteArrays, convertABIDecodedBigIntToNumber } from '../util' -import { ABIReturn } from './app' -import { Expand } from './expand' - -/** Type to describe an argument within an `Arc56Method`. */ -export type Arc56MethodArg = Expand< - Omit & { - type: algosdk.ABIArgumentType - } -> - -/** Type to describe a return type within an `Arc56Method`. */ -export type Arc56MethodReturnType = Expand< - Omit & { - type: algosdk.ABIReturnType - } -> - -/** - * Wrapper around `algosdk.ABIMethod` that represents an ARC-56 ABI method. - */ -export class Arc56Method extends algosdk.ABIMethod { - override readonly args: Array - override readonly returns: Arc56MethodReturnType - - constructor(public method: Method) { - super(method) - this.args = method.args.map((arg) => ({ - ...arg, - type: algosdk.abiTypeIsTransaction(arg.type) || algosdk.abiTypeIsReference(arg.type) ? arg.type : algosdk.getABIType(arg.type), - })) - this.returns = { - ...this.method.returns, - type: this.method.returns.type === 'void' ? 'void' : algosdk.getABIType(this.method.returns.type), - } - } - - override toJSON(): Method { - return this.method - } -} - -/** - * Returns the `ABITupleType` for the given ARC-56 struct definition - * @param struct The ARC-56 struct definition - * @returns The `ABITupleType` - */ -export function getABITupleTypeFromABIStructDefinition( - struct: StructField[], - structs: Record, -): algosdk.ABITupleType { - return { - name: algosdk.ABITypeName.Tuple, - childTypes: struct.map((v) => - typeof v.type === 'string' - ? structs[v.type] - ? getABITupleTypeFromABIStructDefinition(structs[v.type], structs) - : algosdk.getABIType(v.type) - : getABITupleTypeFromABIStructDefinition(v.type, structs), - ), - } -} - -/** - * Converts a decoded ABI tuple as a struct. - * @param decodedABITuple The decoded ABI tuple value - * @param structFields The struct fields from an ARC-56 app spec - * @returns The struct as a Record - */ -// eslint-disable-next-line @typescript-eslint/no-explicit-any -export function getABIStructFromABITuple>( - decodedABITuple: algosdk.ABIValue[], - structFields: StructField[], - structs: Record, -): TReturn { - return Object.fromEntries( - structFields.map(({ name: key, type }, i) => { - let abiType: algosdk.ABIType - - if (typeof type === 'string') { - if (type in structs) { - abiType = getABITupleTypeFromABIStructDefinition(structs[type], structs) - } else { - abiType = algosdk.getABIType(type) - } - } else { - abiType = getABITupleTypeFromABIStructDefinition(type, structs) - } - - const abiValue = convertAbiByteArrays(decodedABITuple[i], abiType) - const convertedValue = convertABIDecodedBigIntToNumber(abiValue, abiType) - return [ - key, - (typeof type === 'string' && !structs[type]) || !Array.isArray(convertedValue) - ? convertedValue - : getABIStructFromABITuple(convertedValue, typeof type === 'string' ? structs[type] : type, structs), - ] - }), - ) as TReturn -} - -/** - * Converts an ARC-56 struct as an ABI tuple. - * @param struct The struct to convert - * @param structFields The struct fields from an ARC-56 app spec - * @returns The struct as a decoded ABI tuple - */ -export function getABITupleFromABIStruct( - struct: ABIStruct, - structFields: StructField[], - structs: Record, -): algosdk.ABIValue[] { - return structFields.map(({ name: key, type }) => { - const value = struct[key] - return typeof type === 'string' && !structs[type] - ? (value as algosdk.ABIValue) - : getABITupleFromABIStruct(value as ABIStruct, typeof type === 'string' ? structs[type] : type, structs) - }) -} - -/** Decoded ARC-56 struct as a struct rather than a tuple. */ -export type ABIStruct = { - [key: string]: ABIStruct | algosdk.ABIValue -} - -/** - * Returns the decoded ABI value (or struct for a struct type) - * for the given raw Algorand value given an ARC-56 type and defined ARC-56 structs. - * @param value The raw Algorand value (bytes or uint64) - * @param type The ARC-56 type - either an ABI Type string or a struct name - * @param structs The defined ARC-56 structs - * @returns The decoded ABI value or struct - */ -export function getABIDecodedValue( - value: Uint8Array | number | bigint, - type: string, - structs: Record, -): algosdk.ABIValue | ABIStruct { - if (type === 'AVMBytes' || typeof value !== 'object') return value - if (type === 'AVMString') return Buffer.from(value).toString('utf-8') - if (type === 'AVMUint64') return algosdk.decodeABIValue(algosdk.getABIType('uint64'), value) - if (structs[type]) { - const tupleType = getABITupleTypeFromABIStructDefinition(structs[type], structs) - const tupleValue = algosdk.decodeABIValue(tupleType, value) as algosdk.ABIValue[] - return getABIStructFromABITuple(tupleValue, structs[type], structs) - } - - const abiType = algosdk.getABIType(type) - const decodedValue = convertAbiByteArrays(algosdk.decodeABIValue(abiType, value), abiType) - return convertABIDecodedBigIntToNumber(decodedValue, abiType) -} - -/** - * Returns the ABI-encoded value for the given value. - * @param value The value to encode either already in encoded binary form (`Uint8Array`), a decoded ABI value or an ARC-56 struct - * @param type The ARC-56 type - either an ABI Type string or a struct name - * @param structs The defined ARC-56 structs - * @returns The binary ABI-encoded value - */ -export function getABIEncodedValue( - value: Uint8Array | algosdk.ABIValue | ABIStruct, - type: string, - structs: Record, -): Uint8Array { - if (typeof value === 'object' && value instanceof Uint8Array) return value - if (type === 'AVMUint64') return algosdk.encodeABIValue(algosdk.getABIType('uint64'), value as bigint | number) - if (type === 'AVMBytes' || type === 'AVMString') { - if (typeof value === 'string') return Buffer.from(value, 'utf-8') - if (typeof value !== 'object' || !(value instanceof Uint8Array)) throw new Error(`Expected bytes value for ${type}, but got ${value}`) - return value - } - if (structs[type]) { - const tupleType = getABITupleTypeFromABIStructDefinition(structs[type], structs) - if (Array.isArray(value)) { - return algosdk.encodeABIValue(tupleType, value as algosdk.ABIValue[]) - } else { - return algosdk.encodeABIValue(tupleType, getABITupleFromABIStruct(value as ABIStruct, structs[type], structs)) - } - } - return algosdk.encodeABIValue(algosdk.getABIType(type), value as algosdk.ABIValue) -} - -/** - * Returns the ARC-56 ABI method object for a given method name or signature and ARC-56 app spec. - * @param methodNameOrSignature The method name or method signature to call if an ABI call is being emitted. - * e.g. `my_method` or `my_method(unit64,string)bytes` - * @param appSpec The app spec for the app - * @returns The `Arc56Method` - */ -export function getArc56Method(methodNameOrSignature: string, appSpec: Arc56Contract): Arc56Method { - let method: Method - if (!methodNameOrSignature.includes('(')) { - const methods = appSpec.methods.filter((m) => m.name === methodNameOrSignature) - if (methods.length === 0) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`) - if (methods.length > 1) { - throw new Error( - `Received a call to method ${methodNameOrSignature} in contract ${ - appSpec.name - }, but this resolved to multiple methods; please pass in an ABI signature instead: ${appSpec.methods - .map((m) => new algosdk.ABIMethod(m).getSignature()) - .join(', ')}`, - ) - } - method = methods[0] - } else { - const m = appSpec.methods.find((m) => new algosdk.ABIMethod(m).getSignature() === methodNameOrSignature) - if (!m) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`) - method = m - } - return new Arc56Method(method) -} - -/** - * Checks for decode errors on the AppCallTransactionResult and maps the return value to the specified generic type - * - * @param returnValue The smart contract response - * @param method The method that was called - * @param structs The struct fields from the app spec - * @returns The smart contract response with an updated return value - */ -export function getArc56ReturnValue( - returnValue: ABIReturn | undefined, - method: Method | Arc56Method, - structs: Record, -): TReturn { - const m = 'method' in method ? method.method : method - const type = m.returns.struct ?? m.returns.type - if (returnValue?.decodeError) { - throw returnValue.decodeError - } - if (type === undefined || type === 'void' || returnValue?.returnValue === undefined) return undefined as TReturn - - if (type === 'AVMBytes') return returnValue.rawReturnValue as TReturn - if (type === 'AVMString') return Buffer.from(returnValue.rawReturnValue).toString('utf-8') as TReturn - if (type === 'AVMUint64') return algosdk.decodeABIValue(algosdk.getABIType('uint64'), returnValue.rawReturnValue) as TReturn - - if (structs[type]) { - return getABIStructFromABITuple(returnValue.returnValue as algosdk.ABIValue[], structs[type], structs) as TReturn - } - - return convertAbiByteArrays(returnValue.returnValue, algosdk.getABIType(type)) as TReturn -} - -/****************/ -/** ARC-56 spec */ -/****************/ - -/** Describes the entire contract. This interface is an extension of the interface described in ARC-4 */ -export interface Arc56Contract { - /** The ARCs used and/or supported by this contract. All contracts implicitly support ARC4 and ARC56 */ - arcs: number[] - /** A user-friendly name for the contract */ - name: string - /** Optional, user-friendly description for the interface */ - desc?: string - /** - * Optional object listing the contract instances across different networks. - * The key is the base64 genesis hash of the network, and the value contains - * information about the deployed contract in the network indicated by the - * key. A key containing the human-readable name of the network MAY be - * included, but the corresponding genesis hash key MUST also be defined - */ - networks?: { - [network: string]: { - /** The app ID of the deployed contract in this network */ - appID: number - } - } - /** Named structs used by the application. Each struct field appears in the same order as ABI encoding. */ - structs: { [structName: StructName]: StructField[] } - /** All of the methods that the contract implements */ - methods: Method[] - state: { - /** Defines the values that should be used for GlobalNumUint, GlobalNumByteSlice, LocalNumUint, and LocalNumByteSlice when creating the application */ - schema: { - global: { - ints: number - bytes: number - } - local: { - ints: number - bytes: number - } - } - /** Mapping of human-readable names to StorageKey objects */ - keys: { - global: { [name: string]: StorageKey } - local: { [name: string]: StorageKey } - box: { [name: string]: StorageKey } - } - /** Mapping of human-readable names to StorageMap objects */ - maps: { - global: { [name: string]: StorageMap } - local: { [name: string]: StorageMap } - box: { [name: string]: StorageMap } - } - } - /** Supported bare actions for the contract. An action is a combination of call/create and an OnComplete */ - bareActions: { - /** OnCompletes this method allows when appID === 0 */ - create: ('NoOp' | 'OptIn' | 'DeleteApplication')[] - /** OnCompletes this method allows when appID !== 0 */ - call: ('NoOp' | 'OptIn' | 'CloseOut' | 'ClearState' | 'UpdateApplication' | 'DeleteApplication')[] - } - /** Information about the TEAL programs */ - sourceInfo?: { - /** Approval program information */ - approval: ProgramSourceInfo - /** Clear program information */ - clear: ProgramSourceInfo - } - /** The pre-compiled TEAL that may contain template variables. MUST be omitted if included as part of ARC23 */ - source?: { - /** The approval program */ - approval: string - /** The clear program */ - clear: string - } - /** The compiled bytecode for the application. MUST be omitted if included as part of ARC23 */ - byteCode?: { - /** The approval program */ - approval: string - /** The clear program */ - clear: string - } - /** Information used to get the given byteCode and/or PC values in sourceInfo. MUST be given if byteCode or PC values are present */ - compilerInfo?: { - /** The name of the compiler */ - compiler: 'algod' | 'puya' - /** Compiler version information */ - compilerVersion: { - major: number - minor: number - patch: number - commitHash?: string - } - } - /** ARC-28 events that MAY be emitted by this contract */ - events?: Array - /** A mapping of template variable names as they appear in the TEAL (not including TMPL_ prefix) to their respective types and values (if applicable) */ - templateVariables?: { - [name: string]: { - /** The type of the template variable */ - type: ABIType | AVMType | StructName - /** If given, the base64 encoded value used for the given app/program */ - value?: string - } - } - /** The scratch variables used during runtime */ - scratchVariables?: { - [name: string]: { - slot: number - type: ABIType | AVMType | StructName - } - } -} - -/** Describes a method in the contract. This interface is an extension of the interface described in ARC-4 */ -export interface Method { - /** The name of the method */ - name: string - /** Optional, user-friendly description for the method */ - desc?: string - /** The arguments of the method, in order */ - args: Array<{ - /** The type of the argument. The `struct` field should also be checked to determine if this arg is a struct. */ - type: ABIType - /** If the type is a struct, the name of the struct */ - struct?: StructName - /** Optional, user-friendly name for the argument */ - name?: string - /** Optional, user-friendly description for the argument */ - desc?: string - /** The default value that clients should use. */ - defaultValue?: { - /** Base64 encoded bytes, base64 ARC4 encoded uint64, or UTF-8 method selector */ - data: string - /** How the data is encoded. This is the encoding for the data provided here, not the arg type */ - type?: ABIType | AVMType - /** Where the default value is coming from - * - box: The data key signifies the box key to read the value from - * - global: The data key signifies the global state key to read the value from - * - local: The data key signifies the local state key to read the value from (for the sender) - * - literal: the value is a literal and should be passed directly as the argument - * - method: The utf8 signature of the method in this contract to call to get the default value. If the method has arguments, they all must have default values. The method **MUST** be readonly so simulate can be used to get the default value - */ - source: 'box' | 'global' | 'local' | 'literal' | 'method' - } - }> - /** Information about the method's return value */ - returns: { - /** The type of the return value, or "void" to indicate no return value. The `struct` field should also be checked to determine if this return value is a struct. */ - type: ABIType - /** If the type is a struct, the name of the struct */ - struct?: StructName - /** Optional, user-friendly description for the return value */ - desc?: string - } - /** an action is a combination of call/create and an OnComplete */ - actions: { - /** OnCompletes this method allows when appID === 0 */ - create: ('NoOp' | 'OptIn' | 'DeleteApplication')[] - /** OnCompletes this method allows when appID !== 0 */ - call: ('NoOp' | 'OptIn' | 'CloseOut' | 'ClearState' | 'UpdateApplication' | 'DeleteApplication')[] - } - /** If this method does not write anything to the ledger (ARC-22) */ - readonly?: boolean - /** ARC-28 events that MAY be emitted by this method */ - events?: Array - /** Information that clients can use when calling the method */ - recommendations?: { - /** The number of inner transactions the caller should cover the fees for */ - innerTransactionCount?: number - /** Recommended box references to include */ - boxes?: { - /** The app ID for the box */ - app?: number - /** The base64 encoded box key */ - key: string - /** The number of bytes being read from the box */ - readBytes: number - /** The number of bytes being written to the box */ - writeBytes: number - } - /** Recommended foreign accounts */ - accounts?: string[] - /** Recommended foreign apps */ - apps?: number[] - /** Recommended foreign assets */ - assets?: number[] - } -} - -/** ARC-28 event */ -export interface Event { - /** The name of the event */ - name: string - /** Optional, user-friendly description for the event */ - desc?: string - /** The arguments of the event, in order */ - args: Array<{ - /** The type of the argument. The `struct` field should also be checked to determine if this arg is a struct. */ - type: ABIType - /** Optional, user-friendly name for the argument */ - name?: string - /** Optional, user-friendly description for the argument */ - desc?: string - /** If the type is a struct, the name of the struct */ - struct?: StructName - }> -} - -/** An ABI-encoded type */ -export type ABIType = string - -/** The name of a defined struct */ -export type StructName = string - -/** Raw byteslice without the length prefixed that is specified in ARC-4 */ -export type AVMBytes = 'AVMBytes' - -/** A utf-8 string without the length prefix that is specified in ARC-4 */ -export type AVMString = 'AVMString' - -/** A 64-bit unsigned integer */ -export type AVMUint64 = 'AVMUint64' - -/** A native AVM type */ -export type AVMType = AVMBytes | AVMString | AVMUint64 - -/** Information about a single field in a struct */ -export interface StructField { - /** The name of the struct field */ - name: string - /** The type of the struct field's value */ - type: ABIType | StructName | StructField[] -} - -/** Describes a single key in app storage */ -export interface StorageKey { - /** Description of what this storage key holds */ - desc?: string - /** The type of the key */ - keyType: ABIType | AVMType | StructName - - /** The type of the value */ - valueType: ABIType | AVMType | StructName - /** The bytes of the key encoded as base64 */ - key: string -} - -/** Describes a mapping of key-value pairs in storage */ -export interface StorageMap { - /** Description of what the key-value pairs in this mapping hold */ - desc?: string - /** The type of the keys in the map */ - keyType: ABIType | AVMType | StructName - /** The type of the values in the map */ - valueType: ABIType | AVMType | StructName - /** The base64-encoded prefix of the map keys*/ - prefix?: string -} - -interface SourceInfo { - /** The program counter value(s). Could be offset if pcOffsetMethod is not "none" */ - pc: Array - /** A human-readable string that describes the error when the program fails at the given PC */ - errorMessage?: string - /** The TEAL line number that corresponds to the given PC. RECOMMENDED to be used for development purposes, but not required for clients */ - teal?: number - /** The original source file and line number that corresponds to the given PC. RECOMMENDED to be used for development purposes, but not required for clients */ - source?: string -} - -export interface ProgramSourceInfo { - /** The source information for the program */ - sourceInfo: SourceInfo[] - /** How the program counter offset is calculated - * - none: The pc values in sourceInfo are not offset - * - cblocks: The pc values in sourceInfo are offset by the PC of the first op following the last cblock at the top of the program - */ - pcOffsetMethod: 'none' | 'cblocks' -} diff --git a/src/types/app-client.ts b/src/types/app-client.ts index d5b67eb0f..ee8facedc 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1,17 +1,8 @@ +import { ABIValue, Arc56Contract } from '@algorandfoundation/algokit-abi' import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { - ABIMethod, - ABIMethodParams, - ABIType, - ABIValue, - Address, - Indexer, - ProgramSourceMap, - TransactionSigner, - getApplicationAddress, -} from '@algorandfoundation/sdk' +import { Address, Indexer, ProgramSourceMap, TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' import { Buffer } from 'buffer' import { callApp, @@ -54,19 +45,6 @@ import { TealTemplateParams, UPDATABLE_TEMPLATE_NAME, } from './app' -import { - ABIStruct, - Arc56Contract, - Arc56Method, - ProgramSourceInfo, - StorageKey, - StorageMap, - getABIDecodedValue, - getABIEncodedValue, - getABITupleFromABIStruct, - getArc56Method, - getArc56ReturnValue, -} from './app-arc56' import { AppLookup } from './app-deployer' import { AppManager, BoxIdentifier } from './app-manager' import { AppSpec, arc32ToArc56 } from './app-spec' @@ -391,7 +369,7 @@ export type AppClientMethodCallParams = Expand< * * Another method call (via method call params object) * * undefined (this represents a placeholder for either a default argument or a transaction argument that is fulfilled by another method call argument) */ - args?: (ABIValue | ABIStruct | AppMethodCallTransactionArgument | undefined)[] + args?: (ABIValue | AppMethodCallTransactionArgument | undefined)[] } > diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index 9244f3d46..55c5fc0ca 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -1,6 +1,7 @@ +import { ABIValue, Arc56Contract, encodeABIValue, findABIMethod, getABIType } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIUintType, Address, TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' +import { Address, TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterEach, beforeAll, beforeEach, describe, expect, it, test } from 'vitest' import * as algokit from '..' @@ -17,7 +18,6 @@ import { getTestingAppContract } from '../../tests/example-contracts/testing-app import { algoKitLogCaptureFixture, algorandFixture } from '../testing' import { asJson } from '../util' import { OnSchemaBreak, OnUpdate } from './app' -import { Arc56Contract, getArc56Method } from './app-arc56' import { AppClient } from './app-client' import { AppFactory } from './app-factory' import { AppManager } from './app-manager' @@ -476,7 +476,7 @@ describe('ARC32: app-factory-and-app-client', () => { invariant(result.confirmations) invariant(result.confirmations[1]) expect(result.transactions.length).toBe(2) - const returnValue = AppManager.getABIReturn(result.confirmations[1], getArc56Method('call_abi_txn', client.appSpec)) + const returnValue = AppManager.getABIReturn(result.confirmations[1], findABIMethod('call_abi_txn', client.appSpec)) expect(result.return).toBe(`Sent ${txn.payment?.amount}. test`) expect(returnValue?.returnValue).toBe(result.return) }) @@ -537,7 +537,7 @@ describe('ARC32: app-factory-and-app-client', () => { invariant(result.confirmations) invariant(result.confirmations[0]) expect(result.transactions.length).toBe(1) - const expectedReturnValue = AppManager.getABIReturn(result.confirmations[0], getArc56Method('call_abi_foreign_refs', client.appSpec)) + const expectedReturnValue = AppManager.getABIReturn(result.confirmations[0], findABIMethod('call_abi_foreign_refs', client.appSpec)) const testAccountPublicKey = testAccount.publicKey expect(result.return).toBe(`App: 345, Asset: 567, Account: ${testAccountPublicKey[0]}:${testAccountPublicKey[1]}`) expect(expectedReturnValue?.returnValue).toBe(result.return) @@ -716,11 +716,11 @@ describe('ARC32: app-factory-and-app-client', () => { const expectedValue = 1234524352 await client.send.call({ method: 'set_box', - args: [boxName1, algosdk.encodeABIValue(algosdk.getABIType("uint32"), expectedValue)], + args: [boxName1, encodeABIValue(getABIType('uint32'), expectedValue)], boxReferences: [boxName1], }) - const boxes = await client.getBoxValuesFromABIType(algosdk.getABIType("uint32"), (n) => n.nameBase64 === boxName1Base64) - const box1AbiValue = await client.getBoxValueFromABIType(boxName1, algosdk.getABIType("uint32")) + const boxes = await client.getBoxValuesFromABIType(getABIType('uint32'), (n) => n.nameBase64 === boxName1Base64) + const box1AbiValue = await client.getBoxValueFromABIType(boxName1, getABIType('uint32')) expect(boxes.length).toBe(1) const [value] = boxes expect(Number(value.value)).toBe(expectedValue) @@ -758,7 +758,7 @@ describe('ARC32: app-factory-and-app-client', () => { ) }) - async function testAbiWithDefaultArgMethod( + async function testAbiWithDefaultArgMethod( methodSignature: string, definedValue: TArg, definedValueReturnValue: TResult, diff --git a/src/types/app-manager.ts b/src/types/app-manager.ts index 999d5a86b..aa4accfc6 100644 --- a/src/types/app-manager.ts +++ b/src/types/app-manager.ts @@ -1,15 +1,14 @@ +import { ABIMethod, ABIReturn, ABIType, ABIValue, decodeABIValue } from '@algorandfoundation/algokit-abi' import { AlgodClient, EvalDelta, PendingTransactionResponse, TealValue } from '@algorandfoundation/algokit-algod-client' import { BoxReference as TransactionBoxReference } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { Address, ProgramSourceMap } from '@algorandfoundation/sdk' -import { getABIReturnValue } from '../transaction/transaction' import { TransactionSignerAccount } from './account' import { ABI_RETURN_PREFIX, BoxName, DELETABLE_TEMPLATE_NAME, UPDATABLE_TEMPLATE_NAME, - type ABIReturn, type AppState, type CompiledTeal, type TealTemplateParams, @@ -82,7 +81,7 @@ export interface BoxValueRequestParams { /** The name of the box to return either as a string, binary array or `BoxName` */ boxName: BoxIdentifier /** The ABI type to decode the value using */ - type: algosdk.ABIType + type: ABIType } /** @@ -94,7 +93,7 @@ export interface BoxValuesRequestParams { /** The names of the boxes to return either as a string, binary array or BoxName` */ boxNames: BoxIdentifier[] /** The ABI type to decode the value using */ - type: algosdk.ABIType + type: ABIType } /** Allows management of application information. */ @@ -329,10 +328,10 @@ export class AppManager { * const boxValue = await appManager.getBoxValueFromABIType({ appId: 12353n, boxName: 'boxName', type: new ABIUintType(32) }); * ``` */ - public async getBoxValueFromABIType(request: BoxValueRequestParams): Promise { + public async getBoxValueFromABIType(request: BoxValueRequestParams): Promise { const { appId, boxName, type } = request const value = await this.getBoxValue(appId, boxName) - return algosdk.decodeABIValue(type, value) + return decodeABIValue(type, value) } /** @@ -344,7 +343,7 @@ export class AppManager { * const boxValues = await appManager.getBoxValuesFromABIType({ appId: 12353n, boxNames: ['boxName1', 'boxName2'], type: new ABIUintType(32) }); * ``` */ - public async getBoxValuesFromABIType(request: BoxValuesRequestParams): Promise { + public async getBoxValuesFromABIType(request: BoxValuesRequestParams): Promise { const { appId, boxNames, type } = request return await Promise.all(boxNames.map(async (boxName) => await this.getBoxValueFromABIType({ appId, boxName, type }))) } @@ -429,23 +428,13 @@ export class AppManager { * const returnValue = AppManager.getABIReturn(confirmation, ABIMethod.fromSignature('hello(string)void')); * ``` */ - public static getABIReturn( - confirmation: PendingTransactionResponse | undefined, - method: algosdk.ABIMethod | undefined, - ): ABIReturn | undefined { + public static getABIReturn(confirmation: PendingTransactionResponse | undefined, method: ABIMethod | undefined): ABIReturn | undefined { + // TODO: PD - can we make confirmation non-nullable if (!method || !confirmation || method.returns.type === 'void') { return undefined } - // The parseMethodResponse method mutates the second parameter :( - const abiResult: algosdk.ABIResult = { - txID: '', - method, - rawReturnValue: new Uint8Array(), - } - try { - abiResult.txInfo = confirmation const logs = confirmation.logs || [] if (logs.length === 0) { throw new Error(`App call transaction did not log a return value`) @@ -455,13 +444,21 @@ export class AppManager { throw new Error(`App call transaction did not log an ABI return value`) } - abiResult.rawReturnValue = new Uint8Array(lastLog.slice(4)) - abiResult.returnValue = algosdk.decodeABIValue(method.returns.type, abiResult.rawReturnValue) + const rawReturnValue = new Uint8Array(lastLog.slice(4)) + return { + method: method, + rawReturnValue, + decodeError: undefined, + returnValue: decodeABIValue(method.returns.type, rawReturnValue), + } } catch (err) { - abiResult.decodeError = err as Error + return { + method: method, + rawReturnValue: new Uint8Array(), + decodeError: err as Error, + returnValue: undefined, + } } - - return getABIReturnValue(abiResult, method.returns.type) } private static hasAbiReturnPrefix(log: Uint8Array): boolean { diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index 0e91868a0..e3531eb78 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -1,6 +1,14 @@ -import * as algosdk from '@algorandfoundation/sdk' -import { ABIContractParams, ABIMethod, ABIMethodParams } from '@algorandfoundation/sdk' -import { Arc56Contract, Method as Arc56Method, StorageKey, StructField } from './app-arc56' +import { + ABIMethod, + Arc56Contract, + Arc56Method, + StorageKey, + StructField, + encodeABIValue, + getABIMethodSignature, + getABIType, +} from '@algorandfoundation/algokit-abi' +import { ARC28Event } from '@algorandfoundation/algokit-abi/arc28-event' /** * Converts an ARC-32 Application Specification to an ARC-56 Contract @@ -19,8 +27,8 @@ export function arc32ToArc56(appSpec: AppSpec): Arc56Contract { return [struct.name, fields] }), ) satisfies { [structName: string]: StructField[] } - const hint = (m: ABIMethodParams) => appSpec.hints[new ABIMethod(m).getSignature()] as Hint | undefined - const actions = (m: ABIMethodParams, type: 'CREATE' | 'CALL') => { + const hint = (m: ABIMethodParams) => appSpec.hints[getABIMethodSignature(m)] as Hint | undefined + const actions = (m: ABIMethod, type: 'CREATE' | 'CALL') => { // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain return hint(m)?.call_config !== undefined ? callConfigToActions(hint(m)?.call_config!, type) : [] } @@ -52,7 +60,7 @@ export function arc32ToArc56(appSpec: AppSpec): Arc56Contract { return { source: defaultArg.source === 'constant' ? 'literal' : defaultArg.source === 'global-state' ? 'global' : 'local', data: Buffer.from( - typeof defaultArg.data === 'number' ? algosdk.encodeABIValue(algosdk.getABIType('uint64'), defaultArg.data) : defaultArg.data, + typeof defaultArg.data === 'number' ? encodeABIValue(getABIType('uint64'), defaultArg.data) : defaultArg.data, ).toString('base64'), type: type === 'string' ? 'AVMString' : type, } @@ -161,6 +169,43 @@ export interface AppSpec { bare_call_config: CallConfig } +export interface ABIContractParams { + name: string + desc?: string + networks?: ABIContractNetworks + methods: ABIMethodParams[] + events?: ARC28Event[] +} + +export interface ABIContractNetworks { + [network: string]: ABIContractNetworkInfo +} + +export interface ABIContractNetworkInfo { + appID: number +} +export interface ABIMethodParams { + name: string + desc?: string + args: ABIMethodArgParams[] + returns: ABIMethodReturnParams + /** Optional, is it a read-only method (according to [ARC-22](https://arc.algorand.foundation/ARCs/arc-0022)) */ + readonly?: boolean + /** [ARC-28](https://arc.algorand.foundation/ARCs/arc-0028) events that MAY be emitted by this method */ + events?: ARC28Event[] +} + +export interface ABIMethodArgParams { + type: string + name?: string + desc?: string +} + +export interface ABIMethodReturnParams { + type: string + desc?: string +} + /** A lookup of encoded method call spec to hint */ export type HintSpec = Record @@ -229,7 +274,7 @@ export type DefaultArgument = * The default value should be fetched by invoking an ABI method */ source: 'abi-method' - data: ABIMethodParams + data: ABIMethod } | { /** diff --git a/src/types/app.ts b/src/types/app.ts index c8fa45266..fed9447d5 100644 --- a/src/types/app.ts +++ b/src/types/app.ts @@ -1,6 +1,7 @@ +import { ABIMethod, ABIMethodParams, ABIReturn, ABIType, ABIValue } from '@algorandfoundation/algokit-abi' import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, BoxReference as TransactBoxReference, Transaction } from '@algorandfoundation/algokit-transact' -import { ABIMethod, ABIMethodParams, ABIType, ABIValue, Address, ProgramSourceMap } from '@algorandfoundation/sdk' +import { Address, ProgramSourceMap } from '@algorandfoundation/sdk' import { TransactionWithSigner } from '../transaction' import { Expand } from './expand' import { @@ -226,16 +227,6 @@ export interface AppCallTransactionResultOfType extends SendTransactionResult /** Result from calling an app */ export type AppCallTransactionResult = AppCallTransactionResultOfType -/** The return value of an ABI method call */ -export type ABIReturn = - | { - rawReturnValue: Uint8Array - returnValue: ABIValue - method: ABIMethod - decodeError: undefined - } - | { rawReturnValue?: undefined; returnValue?: undefined; method?: undefined; decodeError: Error } - /** * The payload of the metadata to add to the transaction note when deploying an app, noting it will be prefixed with `APP_DEPLOY_NOTE_PREFIX`. */ diff --git a/src/types/composer.spec.ts b/src/types/composer.spec.ts index 38a16888e..bf67d6754 100644 --- a/src/types/composer.spec.ts +++ b/src/types/composer.spec.ts @@ -1,4 +1,4 @@ -import { ABIMethod } from '@algorandfoundation/sdk' +import { getABIMethod } from '@algorandfoundation/algokit-abi' import { beforeEach, describe, expect, test } from 'vitest' import { algorandFixture } from '../testing' import { AlgoAmount } from './amount' @@ -77,7 +77,7 @@ describe('TransactionComposer', () => { composer1.addAppCallMethodCall({ appId: 123n, sender: testAccount, - method: ABIMethod.fromSignature('createBoxInNewApp(pay)void'), + method: getABIMethod('createBoxInNewApp(pay)void'), args: [ algorand.createTransaction.payment({ sender: testAccount, @@ -117,7 +117,7 @@ describe('TransactionComposer', () => { composer1.addAppCallMethodCall({ appId: 123n, sender: testAccount, - method: ABIMethod.fromSignature('createBoxInNewApp(pay)void'), + method: getABIMethod('createBoxInNewApp(pay)void'), args: [paymentTxn], }) diff --git a/src/types/composer.ts b/src/types/composer.ts index 63635553e..dd0756c28 100644 --- a/src/types/composer.ts +++ b/src/types/composer.ts @@ -1,3 +1,4 @@ +import { ABIMethod, ABIReturn } from '@algorandfoundation/algokit-abi' import { AlgodClient, AlgorandSerializer, @@ -25,7 +26,7 @@ import { groupTransactions, } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIMethod, Address, TransactionSigner } from '@algorandfoundation/sdk' +import { Address, TransactionSigner } from '@algorandfoundation/sdk' import { Config } from '../config' import { TransactionWithSigner, waitForConfirmation } from '../transaction' import { @@ -74,7 +75,6 @@ import { } from '../transactions/method-call' import { buildPayment, type PaymentParams } from '../transactions/payment' import { asJson } from '../util' -import { ABIReturn } from './app' import { AppManager } from './app-manager' import { Expand } from './expand' import { FeeDelta, FeePriority } from './fee-coverage' @@ -232,7 +232,7 @@ export interface BuiltTransactions { /** The built transactions */ transactions: Transaction[] /** Any `ABIMethod` objects associated with any of the transactions in a map keyed by transaction index. */ - methodCalls: Map + methodCalls: Map /** Any `TransactionSigner` objects associated with any of the transactions in a map keyed by transaction index. */ signers: Map } @@ -267,7 +267,7 @@ export class TransactionComposer { // Note: This doesn't need to be a private field of this class // It has been done this way so that another process can manipulate this values, i.e. `legacySendTransactionBridge` // Once the legacy bridges are removed, this can be calculated on the fly - private methodCalls: Map = new Map() + private methodCalls: Map = new Map() private async transformError(originalError: unknown): Promise { // Transformers only work with Error instances, so immediately return anything else diff --git a/src/types/transaction.ts b/src/types/transaction.ts index 9b20943c6..721656bac 100644 --- a/src/types/transaction.ts +++ b/src/types/transaction.ts @@ -1,3 +1,4 @@ +import { ABIReturn } from '@algorandfoundation/algokit-abi' import { PendingTransactionResponse } from '@algorandfoundation/algokit-algod-client' import { AppCallTransactionFields, @@ -16,7 +17,6 @@ import { StateProofTransactionFields } from '@algorandfoundation/algokit-transac import { LogicSigAccount, type Account } from '@algorandfoundation/sdk' import { MultisigAccount, SigningAccount, TransactionSignerAccount } from './account' import { AlgoAmount } from './amount' -import { ABIReturn } from './app' import { TransactionComposer } from './composer' import { Expand } from './expand' diff --git a/src/util.spec.ts b/src/util.spec.ts index 78a9d48e6..17ac9761c 100644 --- a/src/util.spec.ts +++ b/src/util.spec.ts @@ -1,167 +1,168 @@ -import { convertAbiByteArrays as convertAbiByteArrays } from './util' +// TODO: PD - check this tests +// import { convertAbiByteArrays as convertAbiByteArrays } from './util' -import { describe, it, expect } from 'vitest' -import { ABIValue, getABIType, ABITypeName } from '@algorandfoundation/sdk' // Adjust this import path +// import { describe, it, expect } from 'vitest' +// import { ABIValue, getABIType, ABITypeName } from '@algorandfoundation/sdk' // Adjust this import path -describe('convertAbiByteArrays', () => { - describe('Basic byte arrays', () => { - it('should convert a simple byte array to Uint8Array', () => { - // Create a static array of bytes: byte[4] - const arrayType = getABIType('byte[4]') +// describe('convertAbiByteArrays', () => { +// describe('Basic byte arrays', () => { +// it('should convert a simple byte array to Uint8Array', () => { +// // Create a static array of bytes: byte[4] +// const arrayType = getABIType('byte[4]') - const value = [1, 2, 3, 4] - const result = convertAbiByteArrays(value, arrayType) +// const value = [1, 2, 3, 4] +// const result = convertAbiByteArrays(value, arrayType) - expect(result).toBeInstanceOf(Uint8Array) - expect(Array.from(result as Uint8Array)).toEqual([1, 2, 3, 4]) - }) - - it('should handle dynamic byte arrays', () => { - // Create a dynamic array of bytes: byte[] - const arrayType = getABIType('byte[]') - - const value = [10, 20, 30, 40, 50] - const result = convertAbiByteArrays(value, arrayType) - - expect(result).toBeInstanceOf(Uint8Array) - expect(Array.from(result as Uint8Array)).toEqual([10, 20, 30, 40, 50]) - }) - - it('should return existing Uint8Array as is', () => { - const arrayType = getABIType('byte[3]') - - const value = new Uint8Array([5, 6, 7]) - const result = convertAbiByteArrays(value, arrayType) - - expect(result).toBe(value) // Should be the same instance - }) - }) - - describe('Nested arrays', () => { - it('should convert byte arrays inside arrays', () => { - // Create byte[2][] - const outerArrayType = getABIType('byte[2][]') - - const value = [ - [1, 2], - [3, 4], - [5, 6], - ] - const result = convertAbiByteArrays(value, outerArrayType) as ABIValue[] - - expect(Array.isArray(result)).toBe(true) - expect(result.length).toBe(3) - - result.forEach((item) => { - expect(item).toBeInstanceOf(Uint8Array) - }) - - expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) - expect(Array.from(result[1] as Uint8Array)).toEqual([3, 4]) - expect(Array.from(result[2] as Uint8Array)).toEqual([5, 6]) - }) - - it('should not convert non-byte arrays', () => { - // Create uint8[3] - const arrayType = getABIType('uint8[3]') - - const value = [1, 2, 3] - const result = convertAbiByteArrays(value, arrayType) - - expect(Array.isArray(result)).toBe(true) - expect(result).toEqual([1, 2, 3]) - }) - }) - - describe('Tuple tests', () => { - it('should handle tuples with byte arrays', () => { - // Create (byte[2],bool,byte[3]) - const tupleType = getABIType('(byte[2],bool,byte[3])') - - const value = [[1, 2], true, [3, 4, 5]] - const result = convertAbiByteArrays(value, tupleType) as ABIValue[] - - expect(Array.isArray(result)).toBe(true) - expect(result.length).toBe(3) - - expect(result[0]).toBeInstanceOf(Uint8Array) - expect(result[1]).toBe(true) - expect(result[2]).toBeInstanceOf(Uint8Array) - - expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) - expect(Array.from(result[2] as Uint8Array)).toEqual([3, 4, 5]) - }) - - it('should handle nested tuples with byte arrays', () => { - // Create (byte[2],(byte[1],bool)) - const outerTupleType = getABIType('(byte[2],(byte[1],bool))') - - const value = [ - [1, 2], - [[3], true], - ] - const result = convertAbiByteArrays(value, outerTupleType) as ABIValue[] - - expect(Array.isArray(result)).toBe(true) - expect(result.length).toBe(2) - - expect(result[0]).toBeInstanceOf(Uint8Array) - expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) - - const nestedTuple = result[1] as ABIValue[] - expect(Array.isArray(nestedTuple)).toBe(true) - expect(nestedTuple.length).toBe(2) - expect(nestedTuple[0]).toBeInstanceOf(Uint8Array) - expect(Array.from(nestedTuple[0] as Uint8Array)).toEqual([3]) - expect(nestedTuple[1]).toBe(true) - }) - }) - - describe('Complex mixed structures', () => { - it('should handle complex nested structures', () => { - // Create (byte[2][],uint8,(bool,byte[3])) - const outerTupleType = getABIType('(byte[2][],uint8,(bool,byte[3]))') - - const value = [ - [ - [1, 2], - [3, 4], - [5, 6], - ], // byte[2][] - 123, // uint8 - [true, [7, 8, 9]], // (bool,byte[3]) - ] - - const result = convertAbiByteArrays(value, outerTupleType) as ABIValue[] - - // Check first element (byte[2][]) - const byteArrays = result[0] as ABIValue[] - expect(Array.isArray(byteArrays)).toBe(true) - expect(byteArrays.length).toBe(3) - byteArrays.forEach((item) => { - expect(item).toBeInstanceOf(Uint8Array) - }) - - // Check second element (uint8) - expect(result[1]).toBe(123) - - // Check third element (bool,byte[3]) - const tuple = result[2] as ABIValue[] - expect(tuple[0]).toBe(true) - expect(tuple[1]).toBeInstanceOf(Uint8Array) - expect(Array.from(tuple[1] as Uint8Array)).toEqual([7, 8, 9]) - }) - }) - - describe('Edge cases', () => { - it('should handle empty byte arrays', () => { - const arrayType = getABIType('byte[0]') - - const value: number[] = [] - const result = convertAbiByteArrays(value, arrayType) - - expect(result).toBeInstanceOf(Uint8Array) - expect((result as Uint8Array).length).toBe(0) - }) - }) -}) +// expect(result).toBeInstanceOf(Uint8Array) +// expect(Array.from(result as Uint8Array)).toEqual([1, 2, 3, 4]) +// }) + +// it('should handle dynamic byte arrays', () => { +// // Create a dynamic array of bytes: byte[] +// const arrayType = getABIType('byte[]') + +// const value = [10, 20, 30, 40, 50] +// const result = convertAbiByteArrays(value, arrayType) + +// expect(result).toBeInstanceOf(Uint8Array) +// expect(Array.from(result as Uint8Array)).toEqual([10, 20, 30, 40, 50]) +// }) + +// it('should return existing Uint8Array as is', () => { +// const arrayType = getABIType('byte[3]') + +// const value = new Uint8Array([5, 6, 7]) +// const result = convertAbiByteArrays(value, arrayType) + +// expect(result).toBe(value) // Should be the same instance +// }) +// }) + +// describe('Nested arrays', () => { +// it('should convert byte arrays inside arrays', () => { +// // Create byte[2][] +// const outerArrayType = getABIType('byte[2][]') + +// const value = [ +// [1, 2], +// [3, 4], +// [5, 6], +// ] +// const result = convertAbiByteArrays(value, outerArrayType) as ABIValue[] + +// expect(Array.isArray(result)).toBe(true) +// expect(result.length).toBe(3) + +// result.forEach((item) => { +// expect(item).toBeInstanceOf(Uint8Array) +// }) + +// expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) +// expect(Array.from(result[1] as Uint8Array)).toEqual([3, 4]) +// expect(Array.from(result[2] as Uint8Array)).toEqual([5, 6]) +// }) + +// it('should not convert non-byte arrays', () => { +// // Create uint8[3] +// const arrayType = getABIType('uint8[3]') + +// const value = [1, 2, 3] +// const result = convertAbiByteArrays(value, arrayType) + +// expect(Array.isArray(result)).toBe(true) +// expect(result).toEqual([1, 2, 3]) +// }) +// }) + +// describe('Tuple tests', () => { +// it('should handle tuples with byte arrays', () => { +// // Create (byte[2],bool,byte[3]) +// const tupleType = getABIType('(byte[2],bool,byte[3])') + +// const value = [[1, 2], true, [3, 4, 5]] +// const result = convertAbiByteArrays(value, tupleType) as ABIValue[] + +// expect(Array.isArray(result)).toBe(true) +// expect(result.length).toBe(3) + +// expect(result[0]).toBeInstanceOf(Uint8Array) +// expect(result[1]).toBe(true) +// expect(result[2]).toBeInstanceOf(Uint8Array) + +// expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) +// expect(Array.from(result[2] as Uint8Array)).toEqual([3, 4, 5]) +// }) + +// it('should handle nested tuples with byte arrays', () => { +// // Create (byte[2],(byte[1],bool)) +// const outerTupleType = getABIType('(byte[2],(byte[1],bool))') + +// const value = [ +// [1, 2], +// [[3], true], +// ] +// const result = convertAbiByteArrays(value, outerTupleType) as ABIValue[] + +// expect(Array.isArray(result)).toBe(true) +// expect(result.length).toBe(2) + +// expect(result[0]).toBeInstanceOf(Uint8Array) +// expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) + +// const nestedTuple = result[1] as ABIValue[] +// expect(Array.isArray(nestedTuple)).toBe(true) +// expect(nestedTuple.length).toBe(2) +// expect(nestedTuple[0]).toBeInstanceOf(Uint8Array) +// expect(Array.from(nestedTuple[0] as Uint8Array)).toEqual([3]) +// expect(nestedTuple[1]).toBe(true) +// }) +// }) + +// describe('Complex mixed structures', () => { +// it('should handle complex nested structures', () => { +// // Create (byte[2][],uint8,(bool,byte[3])) +// const outerTupleType = getABIType('(byte[2][],uint8,(bool,byte[3]))') + +// const value = [ +// [ +// [1, 2], +// [3, 4], +// [5, 6], +// ], // byte[2][] +// 123, // uint8 +// [true, [7, 8, 9]], // (bool,byte[3]) +// ] + +// const result = convertAbiByteArrays(value, outerTupleType) as ABIValue[] + +// // Check first element (byte[2][]) +// const byteArrays = result[0] as ABIValue[] +// expect(Array.isArray(byteArrays)).toBe(true) +// expect(byteArrays.length).toBe(3) +// byteArrays.forEach((item) => { +// expect(item).toBeInstanceOf(Uint8Array) +// }) + +// // Check second element (uint8) +// expect(result[1]).toBe(123) + +// // Check third element (bool,byte[3]) +// const tuple = result[2] as ABIValue[] +// expect(tuple[0]).toBe(true) +// expect(tuple[1]).toBeInstanceOf(Uint8Array) +// expect(Array.from(tuple[1] as Uint8Array)).toEqual([7, 8, 9]) +// }) +// }) + +// describe('Edge cases', () => { +// it('should handle empty byte arrays', () => { +// const arrayType = getABIType('byte[0]') + +// const value: number[] = [] +// const result = convertAbiByteArrays(value, arrayType) + +// expect(result).toBeInstanceOf(Uint8Array) +// expect((result as Uint8Array).length).toBe(0) +// }) +// }) +// }) diff --git a/src/util.ts b/src/util.ts index 09b3c8779..70fbf47da 100644 --- a/src/util.ts +++ b/src/util.ts @@ -1,12 +1,3 @@ -import { - ABIReturnType, - ABIType, - ABIValue, - ABITypeName, - getABITypeName, - ABIArrayDynamicType, - ABIArrayStaticType, -} from '@algorandfoundation/sdk' import { APP_PAGE_MAX_SIZE } from './types/app' /** @@ -115,60 +106,3 @@ export const asJson = ( export const calculateExtraProgramPages = (approvalProgram: Uint8Array, clearStateProgram?: Uint8Array): number => { return Math.floor((approvalProgram.length + (clearStateProgram?.length ?? 0) - 1) / APP_PAGE_MAX_SIZE) } - -/** Take a decoded ABI value and convert all byte arrays (including nested ones) from number[] to Uint8Arrays */ -export function convertAbiByteArrays(value: ABIValue, type: ABIReturnType): ABIValue { - // Return value as is if the type doesn't have any bytes or if it's already an Uint8Array - if (typeof type === 'string' || !getABITypeName(type).includes('byte') || value instanceof Uint8Array) { - return value - } - - // Handle byte arrays (byte[N] or byte[]) - if ( - (type.name === ABITypeName.StaticArray || type.name === ABITypeName.DynamicArray) && - type.childType.name === ABITypeName.Byte && - Array.isArray(value) - ) { - return new Uint8Array(value as number[]) - } - - // Handle other arrays (for nested structures) - if ((type.name === ABITypeName.StaticArray || type.name === ABITypeName.DynamicArray) && Array.isArray(value)) { - const result = [] - for (let i = 0; i < value.length; i++) { - result.push(convertAbiByteArrays(value[i], type.childType)) - } - return result - } - - // Handle tuples (for nested structures) - if (type.name === ABITypeName.Tuple && Array.isArray(value)) { - const result = [] - for (let i = 0; i < value.length && i < type.childTypes.length; i++) { - result.push(convertAbiByteArrays(value[i], type.childTypes[i])) - } - return result - } - - // For other types, return the value as is - return value -} - -/** - * Convert bigint values to numbers for uint types with bit size < 53 - */ -export const convertABIDecodedBigIntToNumber = (value: ABIValue, type: ABIType): ABIValue => { - if (typeof value === 'bigint') { - if (type.name === ABITypeName.Uint) { - return type.bitSize < 53 ? Number(value) : value - } else { - return value - } - } else if (Array.isArray(value) && (type.name === ABITypeName.StaticArray || type.name === ABITypeName.DynamicArray)) { - return value.map((v) => convertABIDecodedBigIntToNumber(v, type.childType)) - } else if (Array.isArray(value) && type.name === ABITypeName.Tuple) { - return value.map((v, i) => convertABIDecodedBigIntToNumber(v, type.childTypes[i])) - } else { - return value - } -} diff --git a/tests/example-contracts/client/TestContractClient.ts b/tests/example-contracts/client/TestContractClient.ts index a98dbafb2..872a741fd 100644 --- a/tests/example-contracts/client/TestContractClient.ts +++ b/tests/example-contracts/client/TestContractClient.ts @@ -4,9 +4,9 @@ * DO NOT MODIFY IT BY HAND. * requires: @algorandfoundation/algokit-utils: ^2 */ +import type { ABIReturn } from '@algorandfoundation/algokit-abi' import { AlgodClient, SimulateRequest, SimulateTransactionGroupResult } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, Transaction } from '@algorandfoundation/algokit-transact' -import type { ABIResult } from '@algorandfoundation/sdk' import * as algokit from '../../../src/index' import { TransactionWithSigner } from '../../../src/index' import type { @@ -926,7 +926,7 @@ export type TestContractComposer = { export type SimulateOptions = Omit export type TestContractComposerSimulateResult = { returns: TReturns - methodResults: ABIResult[] + methodResults: ABIReturn[] simulateResponse: SimulateTransactionGroupResult } export type TestContractComposerResults = { From 8a7fc71aaef93a9b64521c2159930ed39335a11d Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 14 Nov 2025 15:31:11 +1000 Subject: [PATCH 03/43] wip - styling fixing everything --- packages/abi/src/abi-method.ts | 34 +++++++------- packages/abi/src/arc56-contract.ts | 9 ++++ src/types/app-client.ts | 72 ++++++++---------------------- src/types/app-manager.ts | 2 +- src/types/app-spec.ts | 22 +++++---- src/types/app.ts | 3 +- 6 files changed, 58 insertions(+), 84 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 912c487d3..cf50761fc 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -33,22 +33,24 @@ export type ABIMethodReturn = { } /** Represents an ABI method return value with parsed data. */ -export type ABIReturn = { - /** The method that was called. */ - method: ABIMethod - /** The raw return value as bytes. - * - * This value will be empty if the method does not return a value (return type "void") - */ - rawReturnValue: Uint8Array - /** The parsed ABI return value. - * - * This value will be undefined if decoding failed or the method does not return a value (return type "void") - */ - returnValue?: ABIValue - /** Any error that occurred during decoding, or undefined if decoding was successful */ - decodeError?: Error -} +export type ABIReturn = + | { + /** The method that was called. */ + method: ABIMethod + /** The raw return value as bytes. + * + * This value will be empty if the method does not return a value (return type "void") + */ + rawReturnValue: Uint8Array + /** The parsed ABI return value. + * + * This value will be undefined if decoding failed or the method does not return a value (return type "void") + */ + returnValue: ABIValue + /** Any error that occurred during decoding, or undefined if decoding was successful */ + decodeError: undefined + } + | { rawReturnValue?: undefined; returnValue?: undefined; method: ABIMethod; decodeError: Error } /** Decoded ARC-56 struct as a struct rather than a tuple. */ export type ABIStruct = { diff --git a/packages/abi/src/arc56-contract.ts b/packages/abi/src/arc56-contract.ts index 95817f39c..9020c1b08 100644 --- a/packages/abi/src/arc56-contract.ts +++ b/packages/abi/src/arc56-contract.ts @@ -2,6 +2,8 @@ /** ARC-56 spec */ /****************/ +import { ABIType, getABIStructType, getABIType } from './abi-type' + /** Describes the entire contract. This type is an extension of the type described in ARC-4 */ export type Arc56Contract = { /** The ARCs used and/or supported by this contract. All contracts implicitly support ARC4 and ARC56 */ @@ -278,3 +280,10 @@ export type ProgramSourceInfo = { */ pcOffsetMethod: 'none' | 'cblocks' } + +function foo(appSpec: Arc56Contract, type: string): ABIType { + if (appSpec.structs[type]) { + return getABIStructType(type, appSpec.structs) + } + return getABIType(type) +} diff --git a/src/types/app-client.ts b/src/types/app-client.ts index ee8facedc..e7fa62c2b 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1,4 +1,4 @@ -import { ABIValue, Arc56Contract } from '@algorandfoundation/algokit-abi' +import { ABIMethod, ABIType, ABIValue, Arc56Contract, ProgramSourceInfo, findABIMethod } from '@algorandfoundation/algokit-abi' import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' @@ -32,7 +32,6 @@ import { AppCompilationResult, AppMetadata, AppReference, - AppReturn, AppState, AppStorageSchema, BoxName, @@ -900,25 +899,7 @@ export class AppClient { * @returns A tuple with: [ARC-56 `Method`, algosdk `ABIMethod`] */ public getABIMethod(methodNameOrSignature: string) { - return getArc56Method(methodNameOrSignature, this._appSpec) - } - - /** - * Checks for decode errors on the SendAppTransactionResult and maps the return value to the specified type - * on the ARC-56 method, replacing the `return` property with the decoded type. - * - * If the return type is an ARC-56 struct then the struct will be returned. - * - * @param result The SendAppTransactionResult to be mapped - * @param method The method that was called - * @returns The smart contract response with an updated return value - */ - public async processMethodCallReturn< - TReturn extends Uint8Array | ABIValue | ABIStruct | undefined, - TResult extends SendAppTransactionResult = SendAppTransactionResult, - >(result: Promise | TResult, method: Arc56Method): Promise & AppReturn> { - const resultValue = await result - return { ...resultValue, return: getArc56ReturnValue(resultValue.return, method, this._appSpec.structs) } + return findABIMethod(methodNameOrSignature, this._appSpec) } /** @@ -1098,7 +1079,7 @@ export class AppClient { args: AppClientMethodCallParams['args'] | undefined, sender: Address | string, ): Promise['args']> { - const m = getArc56Method(methodNameOrSignature, this._appSpec) + const m = findABIMethod(methodNameOrSignature, this._appSpec) return await Promise.all( args?.map(async (a, i) => { const arg = m.args[i] @@ -1350,11 +1331,9 @@ export class AppClient { */ update: async (params: AppClientMethodCallParams & AppClientCompilationParams & SendParams) => { const compiled = await this.compile(params) + const sendTransactionResult = this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) return { - ...(await this.processMethodCallReturn( - this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })), - getArc56Method(params.method, this._appSpec), - )), + ...sendTransactionResult, ...(compiled as Partial), } }, @@ -1364,10 +1343,7 @@ export class AppClient { * @returns The result of sending the opt-in ABI method call */ optIn: async (params: AppClientMethodCallParams & SendParams) => { - return this.processMethodCallReturn( - this._algorand.send.appCallMethodCall(await this.params.optIn(params)), - getArc56Method(params.method, this._appSpec), - ) + return this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) }, /** * Sign and send transactions for a delete ABI call @@ -1375,10 +1351,7 @@ export class AppClient { * @returns The result of sending the delete ABI method call */ delete: async (params: AppClientMethodCallParams & SendParams) => { - return this.processMethodCallReturn( - this._algorand.send.appDeleteMethodCall(await this.params.delete(params)), - getArc56Method(params.method, this._appSpec), - ) + return this._algorand.send.appDeleteMethodCall(await this.params.delete(params)) }, /** * Sign and send transactions for a close out ABI call @@ -1386,10 +1359,7 @@ export class AppClient { * @returns The result of sending the close out ABI method call */ closeOut: async (params: AppClientMethodCallParams & SendParams) => { - return this.processMethodCallReturn( - this._algorand.send.appCallMethodCall(await this.params.closeOut(params)), - getArc56Method(params.method, this._appSpec), - ) + return this._algorand.send.appCallMethodCall(await this.params.closeOut(params)) }, /** * Sign and send transactions for a call (defaults to no-op) @@ -1400,7 +1370,7 @@ export class AppClient { // Read-only call - do it via simulate if ( (params.onComplete === OnApplicationComplete.NoOp || !params.onComplete) && - getArc56Method(params.method, this._appSpec).method.readonly + findABIMethod(params.method, this._appSpec).readonly ) { const readonlyParams = { ...params, @@ -1427,16 +1397,13 @@ export class AppClient { // Simulate calls for a readonly method can use the max opcode budget extraOpcodeBudget: MAX_SIMULATE_OPCODE_BUDGET, }) - return this.processMethodCallReturn( - { - ...result, - transaction: result.transactions.at(-1)!, - confirmation: result.confirmations.at(-1)!, - // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain - return: (result.returns?.length ?? 0 > 0) ? result.returns?.at(-1)! : undefined, - } satisfies SendAppTransactionResult, - getArc56Method(params.method, this._appSpec), - ) + return { + ...result, + transaction: result.transactions.at(-1)!, + confirmation: result.confirmations.at(-1)!, + // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain + return: (result.returns?.length ?? 0 > 0) ? result.returns?.at(-1)! : undefined, + } satisfies SendAppTransactionResult } catch (e) { const error = e as Error // For read-only calls with max opcode budget, fee issues should be rare @@ -1448,10 +1415,7 @@ export class AppClient { } } - return this.processMethodCallReturn( - this._algorand.send.appCallMethodCall(await this.params.call(params)), - getArc56Method(params.method, this._appSpec), - ) + return this._algorand.send.appCallMethodCall(await this.params.call(params)) }, } } @@ -1550,7 +1514,7 @@ export class AppClient { TOnComplete extends OnApplicationComplete, >(params: TParams, onComplete: TOnComplete) { const sender = this.getSender(params.sender) - const method = getArc56Method(params.method, this._appSpec) + const method = findABIMethod(params.method, this._appSpec) const args = await this.getABIArgsWithDefaultValues(params.method, params.args, sender) return { ...params, diff --git a/src/types/app-manager.ts b/src/types/app-manager.ts index aa4accfc6..412c4ccf2 100644 --- a/src/types/app-manager.ts +++ b/src/types/app-manager.ts @@ -454,7 +454,7 @@ export class AppManager { } catch (err) { return { method: method, - rawReturnValue: new Uint8Array(), + rawReturnValue: undefined, decodeError: err as Error, returnValue: undefined, } diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index e3531eb78..8f59a024d 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -1,13 +1,4 @@ -import { - ABIMethod, - Arc56Contract, - Arc56Method, - StorageKey, - StructField, - encodeABIValue, - getABIMethodSignature, - getABIType, -} from '@algorandfoundation/algokit-abi' +import { ABIMethod, Arc56Contract, Arc56Method, StorageKey, StructField, encodeABIValue, getABIType } from '@algorandfoundation/algokit-abi' import { ARC28Event } from '@algorandfoundation/algokit-abi/arc28-event' /** @@ -27,8 +18,8 @@ export function arc32ToArc56(appSpec: AppSpec): Arc56Contract { return [struct.name, fields] }), ) satisfies { [structName: string]: StructField[] } - const hint = (m: ABIMethodParams) => appSpec.hints[getABIMethodSignature(m)] as Hint | undefined - const actions = (m: ABIMethod, type: 'CREATE' | 'CALL') => { + const hint = (m: ABIMethodParams) => appSpec.hints[getABIMethodParamsSignature(m)] as Hint | undefined + const actions = (m: ABIMethodParams, type: 'CREATE' | 'CALL') => { // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain return hint(m)?.call_config !== undefined ? callConfigToActions(hint(m)?.call_config!, type) : [] } @@ -153,6 +144,13 @@ export function arc32ToArc56(appSpec: AppSpec): Arc56Contract { } satisfies Arc56Contract } +// TODO: PD - confirm this logic +function getABIMethodParamsSignature(params: ABIMethodParams) { + const args = params.args.map((a) => a.type).join(',') + const returns = params.returns.type === 'void' ? '' : params.returns.type + return `${params.name}(${args})${returns}` +} + /** An ARC-0032 Application Specification see https://github.com/algorandfoundation/ARCs/pull/150 */ export interface AppSpec { /** Method call hints */ diff --git a/src/types/app.ts b/src/types/app.ts index fed9447d5..19dabba2d 100644 --- a/src/types/app.ts +++ b/src/types/app.ts @@ -1,8 +1,9 @@ -import { ABIMethod, ABIMethodParams, ABIReturn, ABIType, ABIValue } from '@algorandfoundation/algokit-abi' +import { ABIMethod, ABIReturn, ABIType, ABIValue } from '@algorandfoundation/algokit-abi' import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, BoxReference as TransactBoxReference, Transaction } from '@algorandfoundation/algokit-transact' import { Address, ProgramSourceMap } from '@algorandfoundation/sdk' import { TransactionWithSigner } from '../transaction' +import { ABIMethodParams } from './app-spec' import { Expand } from './expand' import { SendSingleTransactionResult, From 82c28cff9339a429c4eceb088b05e5b6653e5c63 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Thu, 20 Nov 2025 13:54:04 +1000 Subject: [PATCH 04/43] wip - fix types --- MIGRATION-NOTES.md | 2 ++ packages/abi/src/arc56-contract.ts | 9 --------- src/app-deploy.ts | 11 ++++------- src/app.ts | 20 +++++++++----------- src/transaction/legacy-bridge.ts | 8 ++++---- src/transactions/method-call.ts | 24 ++++++++++++------------ src/types/algorand-client.spec.ts | 8 +++++--- src/types/app-client.spec.ts | 28 +++++++++++++++++----------- src/types/app.ts | 3 +-- 9 files changed, 54 insertions(+), 59 deletions(-) diff --git a/MIGRATION-NOTES.md b/MIGRATION-NOTES.md index f3955b6f0..3902174b9 100644 --- a/MIGRATION-NOTES.md +++ b/MIGRATION-NOTES.md @@ -41,6 +41,8 @@ A collection of random notes pop up during the migration process. - TestContractClient was updated - TODO: PD - confirm Converts `bigint`'s for Uint's < 64 to `number` for easier use. - TODO: PD - look into convertAbiByteArrays + - TODO: PD - support txnCount for ABIMethod + - Remove `ABIMethodParams` - Make sure that the python utils also sort resources during resource population - migration stratefy for EventType.TxnGroupSimulated in utils-ts-debug - create BuildComposerTransactionsError error type diff --git a/packages/abi/src/arc56-contract.ts b/packages/abi/src/arc56-contract.ts index 9020c1b08..95817f39c 100644 --- a/packages/abi/src/arc56-contract.ts +++ b/packages/abi/src/arc56-contract.ts @@ -2,8 +2,6 @@ /** ARC-56 spec */ /****************/ -import { ABIType, getABIStructType, getABIType } from './abi-type' - /** Describes the entire contract. This type is an extension of the type described in ARC-4 */ export type Arc56Contract = { /** The ARCs used and/or supported by this contract. All contracts implicitly support ARC4 and ARC56 */ @@ -280,10 +278,3 @@ export type ProgramSourceInfo = { */ pcOffsetMethod: 'none' | 'cblocks' } - -function foo(appSpec: Arc56Contract, type: string): ABIType { - if (appSpec.structs[type]) { - return getABIStructType(type, appSpec.structs) - } - return getABIType(type) -} diff --git a/src/app-deploy.ts b/src/app-deploy.ts index c7b05bb6f..80b7a091e 100644 --- a/src/app-deploy.ts +++ b/src/app-deploy.ts @@ -1,3 +1,4 @@ +import { ABIReturn } from '@algorandfoundation/algokit-abi' import { AlgodClient, ApplicationStateSchema } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' @@ -7,7 +8,6 @@ import { _getAppArgsForABICall, _getBoxReference } from './transaction/legacy-br import { getSenderAddress, getSenderTransactionSigner } from './transaction/transaction' import { AlgorandClientTransactionSender } from './types/algorand-client-transaction-sender' import { - ABIReturn, APP_DEPLOY_NOTE_DAPP, AppCompilationResult, AppDeployMetadata, @@ -140,8 +140,7 @@ export async function deployApp( createParams: deployment.createArgs?.method ? ({ ...createParams, - method: - 'txnCount' in deployment.createArgs.method ? deployment.createArgs.method : new algosdk.ABIMethod(deployment.createArgs.method), + method: deployment.createArgs.method, args: (await _getAppArgsForABICall(deployment.createArgs, deployment.from)).methodArgs, } satisfies AppCreateMethodCall) : ({ @@ -154,8 +153,7 @@ export async function deployApp( updateParams: deployment.updateArgs?.method ? ({ ...updateParams, - method: - 'txnCount' in deployment.updateArgs.method ? deployment.updateArgs.method : new algosdk.ABIMethod(deployment.updateArgs.method), + method: deployment.updateArgs.method, args: (await _getAppArgsForABICall(deployment.updateArgs, deployment.from)).methodArgs, } satisfies Omit) : ({ @@ -168,8 +166,7 @@ export async function deployApp( deleteParams: deployment.deleteArgs?.method ? ({ ...deleteParams, - method: - 'txnCount' in deployment.deleteArgs.method ? deployment.deleteArgs.method : new algosdk.ABIMethod(deployment.deleteArgs.method), + method: deployment.deleteArgs.method, args: (await _getAppArgsForABICall(deployment.deleteArgs, deployment.from)).methodArgs, } satisfies Omit) : ({ diff --git a/src/app.ts b/src/app.ts index 290c57d9d..9232d80e6 100644 --- a/src/app.ts +++ b/src/app.ts @@ -1,12 +1,12 @@ +import { ABIMethod, ABIReturn, ABIValue, getABIMethodSignature as abiGetABIMethodSignature } from '@algorandfoundation/algokit-abi' import { AlgodClient, EvalDelta, PendingTransactionResponse, TealValue } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, BoxReference as TransactBoxReference } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIMethod, ABIMethodParams, ABIValue, Address } from '@algorandfoundation/sdk' +import { Address } from '@algorandfoundation/sdk' import { _getAppArgsForABICall, _getBoxReference, legacySendAppTransactionBridge } from './transaction/legacy-bridge' import { encodeLease, getSenderAddress } from './transaction/transaction' import { ABIAppCallArgs, - ABIReturn, AppCallArgs, AppCallParams, AppCallTransactionResult, @@ -57,7 +57,7 @@ export async function createApp( onComplete, approvalProgram: create.approvalProgram, clearStateProgram: create.clearStateProgram, - method: create.args.method instanceof ABIMethod ? create.args.method : new ABIMethod(create.args.method), + method: create.args.method, extraProgramPages: create.schema.extraPages, schema: create.schema, }, @@ -113,7 +113,7 @@ export async function updateApp( onComplete: OnApplicationComplete.UpdateApplication, approvalProgram: update.approvalProgram, clearStateProgram: update.clearStateProgram, - method: update.args.method instanceof ABIMethod ? update.args.method : new ABIMethod(update.args.method), + method: update.args.method, }, (c) => c.appUpdateMethodCall, (c) => c.appUpdateMethodCall, @@ -200,7 +200,7 @@ export async function callApp(call: AppCallParams, algod: AlgodClient): Promise< sender: getSenderAddress(call.from), // eslint-disable-next-line @typescript-eslint/no-explicit-any onComplete: onComplete as any, - method: call.args.method instanceof ABIMethod ? call.args.method : new ABIMethod(call.args.method), + method: call.args.method, }, (c) => c.appCallMethodCall, (c) => c.appCallMethodCall, @@ -232,9 +232,7 @@ export function getABIReturn(args?: AppCallArgs, confirmation?: PendingTransacti if (!args || !args.method) { return undefined } - const method = 'txnCount' in args.method ? args.method : new ABIMethod(args.method) - - return AppManager.getABIReturn(confirmation, method) + return AppManager.getABIReturn(confirmation, args.method) } /** @@ -425,12 +423,12 @@ export async function compileTeal(tealCode: string, algod: AlgodClient): Promise } /** - * @deprecated Use `abiMethod.getSignature()` or `new ABIMethod(abiMethodParams).getSignature()` instead. + * @deprecated Use `getABIMethodSignature()` from `algokit-abi` * * Returns the encoded ABI spec for a given ABI Method * @param method The method to return a signature for * @returns The encoded ABI method spec e.g. `method_name(uint64,string)string` */ -export const getABIMethodSignature = (method: ABIMethodParams | ABIMethod) => { - return 'getSignature' in method ? method.getSignature() : new ABIMethod(method).getSignature() +export const getABIMethodSignature = (method: ABIMethod) => { + return abiGetABIMethodSignature(method) } diff --git a/src/transaction/legacy-bridge.ts b/src/transaction/legacy-bridge.ts index d81455f4d..89f75f2b3 100644 --- a/src/transaction/legacy-bridge.ts +++ b/src/transaction/legacy-bridge.ts @@ -1,7 +1,7 @@ +import { ABIValue, abiTypeIsTransaction } from '@algorandfoundation/algokit-abi' import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { BoxReference as TransactBoxReference, Transaction } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIMethod, abiTypeIsTransaction } from '@algorandfoundation/sdk' import { AlgorandClientTransactionCreator } from '../types/algorand-client-transaction-creator' import { AlgorandClientTransactionSender } from '../types/algorand-client-transaction-sender' import { ABIAppCallArgs, BoxIdentifier as LegacyBoxIdentifier, BoxReference as LegacyBoxReference, RawAppCallArgs } from '../types/app' @@ -147,7 +147,7 @@ export async function _getAppArgsForABICall(args: ABIAppCallArgs, from: SendTran } // Handle transaction args separately to avoid conflicts with ABIStructValue - const abiArgumentType = args.method.args.at(index)!.type + const abiArgumentType = args.method.args.at(index)!.argType if (abiTypeIsTransaction(abiArgumentType)) { const t = a as TransactionWithSigner | TransactionToSign | Transaction | Promise | SendTransactionResult return 'txn' in t @@ -159,11 +159,11 @@ export async function _getAppArgsForABICall(args: ABIAppCallArgs, from: SendTran : { txn: t, signer } } - return a as algosdk.ABIValue + return a as ABIValue }), ) return { - method: 'txnCount' in args.method ? args.method : new ABIMethod(args.method), + method: args.method, sender: getSenderAddress(from), signer: signer, boxes: args.boxes?.map(_getBoxReference), diff --git a/src/transactions/method-call.ts b/src/transactions/method-call.ts index b43234a60..a9c75d436 100644 --- a/src/transactions/method-call.ts +++ b/src/transactions/method-call.ts @@ -1,17 +1,17 @@ -import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' -import { OnApplicationComplete, Transaction, TransactionType } from '@algorandfoundation/algokit-transact' import { ABIMethod, ABIReferenceType, ABIType, - ABIValue, ABITypeName, - Address, - TransactionSigner, + ABIValue, abiTypeIsReference, abiTypeIsTransaction, encodeABIValue, -} from '@algorandfoundation/sdk' + getABIMethodSelector, +} from '@algorandfoundation/algokit-abi' +import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' +import { OnApplicationComplete, Transaction, TransactionType } from '@algorandfoundation/algokit-transact' +import { Address, TransactionSigner } from '@algorandfoundation/sdk' import { TransactionWithSigner } from '../transaction' import { AlgoAmount } from '../types/amount' import { AppManager } from '../types/app-manager' @@ -235,7 +235,7 @@ function populateMethodArgsIntoReferenceArrays( const apps = appReferences ?? [] methodArgs.forEach((arg, i) => { - const argType = method.args[i].type + const argType = method.args[i].argType if (abiTypeIsReference(argType)) { switch (argType) { case 'account': @@ -319,7 +319,7 @@ function encodeMethodArguments( const encodedArgs = new Array() // Insert method selector at the front - encodedArgs.push(method.getSelector()) + encodedArgs.push(getABIMethodSelector(method)) // Get ABI types for non-transaction arguments const abiTypes = new Array() @@ -330,11 +330,11 @@ function encodeMethodArguments( const methodArg = method.args[i] const argValue = args[i] - if (abiTypeIsTransaction(methodArg.type)) { + if (abiTypeIsTransaction(methodArg.argType)) { // Transaction arguments are not ABI encoded - they're handled separately - } else if (abiTypeIsReference(methodArg.type)) { + } else if (abiTypeIsReference(methodArg.argType)) { // Reference types are encoded as uint8 indexes - const referenceType = methodArg.type + const referenceType = methodArg.argType if (typeof argValue === 'string' || typeof argValue === 'bigint') { const foreignIndex = calculateMethodArgReferenceArrayIndex( argValue, @@ -353,7 +353,7 @@ function encodeMethodArguments( } } else if (argValue !== undefined) { // Regular ABI value - abiTypes.push(methodArg.type) + abiTypes.push(methodArg.argType) // it's safe to cast to ABIValue here because the abiType must be ABIValue abiValues.push(argValue as ABIValue) } diff --git a/src/types/algorand-client.spec.ts b/src/types/algorand-client.spec.ts index ab345370e..be67b66f1 100644 --- a/src/types/algorand-client.spec.ts +++ b/src/types/algorand-client.spec.ts @@ -1,3 +1,4 @@ +import { findABIMethod, getABIMethodSelector } from '@algorandfoundation/algokit-abi' import * as algosdk from '@algorandfoundation/sdk' import { Account, Address } from '@algorandfoundation/sdk' import { beforeAll, describe, expect, test } from 'vitest' @@ -5,6 +6,7 @@ import { APP_SPEC, TestContractClient } from '../../tests/example-contracts/clie import { algorandFixture } from '../testing' import { AlgorandClient } from './algorand-client' import { AlgoAmount } from './amount' +import { arc32ToArc56 } from './app-spec' import { AppCallMethodCall } from './composer' async function compileProgram(algorand: AlgorandClient, b64Teal: string) { @@ -118,7 +120,7 @@ describe('AlgorandClient', () => { sender: alice, appId: appId, args: [ - appClient.appClient.getABIMethod('doMath')!.getSelector(), + getABIMethodSelector(appClient.appClient.getABIMethod('doMath')!), algosdk.encodeUint64(1), algosdk.encodeUint64(2), Uint8Array.from(Buffer.from('AANzdW0=', 'base64')), //sum @@ -270,11 +272,11 @@ describe('AlgorandClient', () => { }) test('methodCall create', async () => { - const contract = new algosdk.ABIContract(APP_SPEC.contract) + const arc56Contract = arc32ToArc56(APP_SPEC) await algorand.send.appCreateMethodCall({ sender: alice, - method: contract.getMethodByName('createApplication'), + method: findABIMethod('createApplication', arc56Contract), approvalProgram: await compileProgram(algorand, APP_SPEC.source.approval), clearStateProgram: await compileProgram(algorand, APP_SPEC.source.clear), }) diff --git a/src/types/app-client.spec.ts b/src/types/app-client.spec.ts index e4de8b612..1019deba2 100644 --- a/src/types/app-client.spec.ts +++ b/src/types/app-client.spec.ts @@ -1,7 +1,9 @@ +import { decodeABIValue, encodeABIValue, getABIMethod, getABIType } from '@algorandfoundation/algokit-abi' +import { getABIStructType } from '@algorandfoundation/algokit-abi/abi-type' import { AlgodClient } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIUintType, Account, Address, Indexer, TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' +import { Account, Address, Indexer, TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterEach, beforeAll, beforeEach, describe, expect, test } from 'vitest' import * as algokit from '..' @@ -11,7 +13,6 @@ import { getTestingAppContract } from '../../tests/example-contracts/testing-app import { algoKitLogCaptureFixture, algorandFixture } from '../testing' import { AlgoAmount } from './amount' import { ABIAppCallArg } from './app' -import { getABIDecodedValue } from './app-arc56' import { AppClient, ApplicationClient } from './app-client' import { AppManager } from './app-manager' import { AppSpec } from './app-spec' @@ -799,11 +800,11 @@ describe('application-client', () => { const expectedValue = 1234524352 await client.call({ method: 'set_box', - methodArgs: [boxName1, algosdk.encodeABIValue(algosdk.getABIType("uint32"), expectedValue)], + methodArgs: [boxName1, encodeABIValue(getABIType('uint32'), expectedValue)], boxes: [boxName1], }) - const boxes = await client.getBoxValuesFromABIType(algosdk.getABIType("uint32"), (n) => n.nameBase64 === boxName1Base64) - const box1AbiValue = await client.getBoxValueFromABIType(boxName1, algosdk.getABIType("uint32")) + const boxes = await client.getBoxValuesFromABIType(getABIType('uint32'), (n) => n.nameBase64 === boxName1Base64) + const box1AbiValue = await client.getBoxValueFromABIType(boxName1, getABIType('uint32')) expect(boxes.length).toBe(1) const [value] = boxes expect(Number(value.value)).toBe(expectedValue) @@ -935,7 +936,7 @@ describe('app-client', () => { const appCall1Params = { sender: testAccount, appId: appClient.appId, - method: algosdk.ABIMethod.fromSignature('set_global(uint64,uint64,string,byte[4])void'), + method: getABIMethod('set_global(uint64,uint64,string,byte[4])void'), args: [1, 2, 'asdf', new Uint8Array([1, 2, 3, 4])], } @@ -948,7 +949,7 @@ describe('app-client', () => { const appCall2Params = { sender: testAccount, appId: appClient.appId, - method: algosdk.ABIMethod.fromSignature('call_abi(string)string'), + method: getABIMethod('call_abi(string)string'), args: ['test'], } @@ -1005,12 +1006,17 @@ describe('app-client', () => { describe('getABIDecodedValue', () => { test('correctly decodes a struct containing a uint16', () => { - const decoded = getABIDecodedValue(new Uint8Array([0, 1, 0, 4, 0, 5, 119, 111, 114, 108, 100]), 'User', { + const structType = getABIStructType('User', { User: [ { name: 'userId', type: 'uint16' }, { name: 'name', type: 'string' }, ], - }) as { userId: number; name: string } + }) + + const decoded = decodeABIValue(structType, new Uint8Array([0, 1, 0, 4, 0, 5, 119, 111, 114, 108, 100])) as { + userId: number + name: string + } expect(typeof decoded.userId).toBe('number') expect(decoded.userId).toBe(1) @@ -1022,8 +1028,8 @@ describe('app-client', () => { // Generate all valid ABI uint bit lengths Array.from({ length: 64 }, (_, i) => (i + 1) * 8), )('correctly decodes a uint%i', (bitLength) => { - const encoded = algosdk.encodeABIValue(algosdk.getABIType(`uint${bitLength}`), 1) - const decoded = getABIDecodedValue(encoded, `uint${bitLength}`, {}) + const encoded = encodeABIValue(getABIType(`uint${bitLength}`), 1) + const decoded = decodeABIValue(getABIType(`uint${bitLength}`), encoded) if (bitLength < 53) { expect(typeof decoded).toBe('number') diff --git a/src/types/app.ts b/src/types/app.ts index 19dabba2d..d179a058b 100644 --- a/src/types/app.ts +++ b/src/types/app.ts @@ -3,7 +3,6 @@ import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, BoxReference as TransactBoxReference, Transaction } from '@algorandfoundation/algokit-transact' import { Address, ProgramSourceMap } from '@algorandfoundation/sdk' import { TransactionWithSigner } from '../transaction' -import { ABIMethodParams } from './app-spec' import { Expand } from './expand' import { SendSingleTransactionResult, @@ -109,7 +108,7 @@ export type ABIAppCallArg = */ export type ABIAppCallArgs = CoreAppCallArgs & { /** The ABI method to call */ - method: ABIMethodParams | ABIMethod + method: ABIMethod /** The ABI method args to pass in */ methodArgs: ABIAppCallArg[] } From 61b43568b0df66272ef4624af68172c8459a44dd Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Thu, 20 Nov 2025 15:15:26 +1000 Subject: [PATCH 05/43] wip - fixing types --- packages/abi/src/abi-method.ts | 19 ++++ packages/sdk/src/logic/sourcemap.ts | 121 ++++++++++------------- src/transaction/transaction.spec.ts | 108 ++++++++++---------- src/types/app-deployer.ts | 2 +- src/types/app-factory-and-client.spec.ts | 6 -- src/types/app-factory.ts | 40 +++----- 6 files changed, 139 insertions(+), 157 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index cf50761fc..67650fb0f 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -25,6 +25,8 @@ export type ABIMethodArg = { argType: ABIMethodArgType name?: string desciption?: string + // TODO: PD - implement default value + defaultValue?: ABIDefaultValue } export type ABIMethodReturn = { @@ -32,6 +34,23 @@ export type ABIMethodReturn = { description?: string } +export type ABIDefaultValue = { + /** Base64 encoded bytes, base64 ARC4 encoded uint64, or UTF-8 method selector */ + data: string + /** Where the default value is coming from */ + source: DefaultValueSource + /** How the data is encoded. This is the encoding for the data provided here, not the arg type */ + valueType?: ABIType +} + +export enum DefaultValueSource { + Box = 'box', + Global = 'global', + Local = 'local', + Literal = 'literal', + Method = 'method', +} + /** Represents an ABI method return value with parsed data. */ export type ABIReturn = | { diff --git a/packages/sdk/src/logic/sourcemap.ts b/packages/sdk/src/logic/sourcemap.ts index 54f94a8e9..76a55b04a 100644 --- a/packages/sdk/src/logic/sourcemap.ts +++ b/packages/sdk/src/logic/sourcemap.ts @@ -1,134 +1,121 @@ // @ts-ignore - vlq doesn't have proper type exports -import * as vlq from 'vlq'; +import * as vlq from 'vlq' /** * Represents a location in a source file. */ export interface SourceLocation { - line: number; - column: number; - sourceIndex: number; - nameIndex?: number; + line: number + column: number + sourceIndex: number + nameIndex?: number } /** * Represents the location of a specific PC in a source line. */ export interface PcLineLocation { - pc: number; - column: number; - nameIndex?: number; + pc: number + column: number + nameIndex?: number } +// TODO: PD - delete this? /** * Contains a mapping from TEAL program PC to source file location. */ export class ProgramSourceMap { - public readonly version: number; + public readonly version: number /** * A list of original sources used by the "mappings" entry. */ - public readonly sources: string[]; + public readonly sources: string[] /** * A list of symbol names used by the "mappings" entry. */ - public readonly names: string[]; + public readonly names: string[] /** * A string with the encoded mapping data. */ - public readonly mappings: string; + public readonly mappings: string - private pcToLocation: Map; + private pcToLocation: Map // Key is `${sourceIndex}:${line}` - private sourceAndLineToPc: Map; - - constructor({ - version, - sources, - names, - mappings, - }: { - version: number; - sources: string[]; - names: string[]; - mappings: string; - }) { - this.version = version; - this.sources = sources; - this.names = names; - this.mappings = mappings; - - if (this.version !== 3) - throw new Error(`Only version 3 is supported, got ${this.version}`); - - if (this.mappings === undefined) - throw new Error( - 'mapping undefined, cannot build source map without `mapping`' - ); - - const pcList = this.mappings.split(';').map(vlq.decode); - - this.pcToLocation = new Map(); - this.sourceAndLineToPc = new Map(); + private sourceAndLineToPc: Map + + constructor({ version, sources, names, mappings }: { version: number; sources: string[]; names: string[]; mappings: string }) { + this.version = version + this.sources = sources + this.names = names + this.mappings = mappings + + if (this.version !== 3) throw new Error(`Only version 3 is supported, got ${this.version}`) + + if (this.mappings === undefined) throw new Error('mapping undefined, cannot build source map without `mapping`') + + const pcList = this.mappings.split(';').map(vlq.decode) + + this.pcToLocation = new Map() + this.sourceAndLineToPc = new Map() const lastLocation = { line: 0, column: 0, sourceIndex: 0, nameIndex: 0, - } satisfies SourceLocation; + } satisfies SourceLocation for (const [pc, data] of pcList.entries()) { - const dataArray = data as number[]; - if (dataArray.length < 4) continue; + const dataArray = data as number[] + if (dataArray.length < 4) continue - const nameDelta = dataArray.length > 4 ? dataArray[4] : undefined; - const [, sourceDelta, lineDelta, columnDelta] = dataArray; + const nameDelta = dataArray.length > 4 ? dataArray[4] : undefined + const [, sourceDelta, lineDelta, columnDelta] = dataArray - lastLocation.sourceIndex += sourceDelta; - lastLocation.line += lineDelta; - lastLocation.column += columnDelta; + lastLocation.sourceIndex += sourceDelta + lastLocation.line += lineDelta + lastLocation.column += columnDelta if (typeof nameDelta !== 'undefined') { - lastLocation.nameIndex += nameDelta; + lastLocation.nameIndex += nameDelta } - const sourceAndLineKey = `${lastLocation.sourceIndex}:${lastLocation.line}`; - let pcsForSourceAndLine = this.sourceAndLineToPc.get(sourceAndLineKey); + const sourceAndLineKey = `${lastLocation.sourceIndex}:${lastLocation.line}` + let pcsForSourceAndLine = this.sourceAndLineToPc.get(sourceAndLineKey) if (pcsForSourceAndLine === undefined) { - pcsForSourceAndLine = []; - this.sourceAndLineToPc.set(sourceAndLineKey, pcsForSourceAndLine); + pcsForSourceAndLine = [] + this.sourceAndLineToPc.set(sourceAndLineKey, pcsForSourceAndLine) } const pcInLine: PcLineLocation = { pc, column: lastLocation.column, - }; + } const pcLocation: SourceLocation = { line: lastLocation.line, column: lastLocation.column, sourceIndex: lastLocation.sourceIndex, - }; + } if (typeof nameDelta !== 'undefined') { - pcInLine.nameIndex = lastLocation.nameIndex; - pcLocation.nameIndex = lastLocation.nameIndex; + pcInLine.nameIndex = lastLocation.nameIndex + pcLocation.nameIndex = lastLocation.nameIndex } - pcsForSourceAndLine.push(pcInLine); - this.pcToLocation.set(pc, pcLocation); + pcsForSourceAndLine.push(pcInLine) + this.pcToLocation.set(pc, pcLocation) } } getPcs(): number[] { - return Array.from(this.pcToLocation.keys()); + return Array.from(this.pcToLocation.keys()) } getLocationForPc(pc: number): SourceLocation | undefined { - return this.pcToLocation.get(pc); + return this.pcToLocation.get(pc) } getPcsOnSourceLine(sourceIndex: number, line: number): PcLineLocation[] { - const pcs = this.sourceAndLineToPc.get(`${sourceIndex}:${line}`); - if (pcs === undefined) return []; - return pcs; + const pcs = this.sourceAndLineToPc.get(`${sourceIndex}:${line}`) + if (pcs === undefined) return [] + return pcs } } diff --git a/src/transaction/transaction.spec.ts b/src/transaction/transaction.spec.ts index d99fd89c5..f61e8a0b4 100644 --- a/src/transaction/transaction.spec.ts +++ b/src/transaction/transaction.spec.ts @@ -1,6 +1,7 @@ +import { decodeABIValue, encodeABIValue, getABIType } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { ABIMethod, Account, Address } from '@algorandfoundation/sdk' +import { Account, Address } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterAll, beforeAll, beforeEach, describe, expect, test } from 'vitest' import { APP_SPEC as nestedContractAppSpec } from '../../tests/example-contracts/client/TestContractClient' @@ -16,7 +17,7 @@ import { AlgoAmount } from '../types/amount' import { AppClient } from '../types/app-client' import { PaymentParams, TransactionComposer } from '../types/composer' import { Arc2TransactionNote } from '../types/transaction' -import { getABIReturnValue, waitForConfirmation } from './transaction' +import { waitForConfirmation } from './transaction' describe('transaction', () => { const localnet = algorandFixture() @@ -1232,82 +1233,77 @@ describe('Resource population: meta', () => { describe('abi return', () => { // eslint-disable-next-line @typescript-eslint/no-explicit-any - const getABIResult = (type: string, value: any) => { - const abiType = algosdk.getABIType(type) - const result = { - method: new ABIMethod({ name: '', args: [], returns: { type: type } }), - rawReturnValue: algosdk.encodeABIValue(abiType, value), - returnValue: algosdk.decodeABIValue(abiType, algosdk.encodeABIValue(abiType, value)), - txID: '', - } as algosdk.ABIResult - return getABIReturnValue(result, abiType) + const encodeThenDecodeValue = (type: string, value: any) => { + const abiType = getABIType(type) + const encoded = encodeABIValue(abiType, value) + return decodeABIValue(abiType, encoded) } test('uint32', () => { - expect(getABIResult('uint32', 0).returnValue).toBe(0) - expect(getABIResult('uint32', 0n).returnValue).toBe(0) - expect(getABIResult('uint32', 1).returnValue).toBe(1) - expect(getABIResult('uint32', 1n).returnValue).toBe(1) - expect(getABIResult('uint32', 2 ** 32 - 1).returnValue).toBe(2 ** 32 - 1) - expect(getABIResult('uint32', 2n ** 32n - 1n).returnValue).toBe(2 ** 32 - 1) + expect(encodeThenDecodeValue('uint32', 0)).toBe(0) + expect(encodeThenDecodeValue('uint32', 0n)).toBe(0) + expect(encodeThenDecodeValue('uint32', 1)).toBe(1) + expect(encodeThenDecodeValue('uint32', 1n)).toBe(1) + expect(encodeThenDecodeValue('uint32', 2 ** 32 - 1)).toBe(2 ** 32 - 1) + expect(encodeThenDecodeValue('uint32', 2n ** 32n - 1n)).toBe(2 ** 32 - 1) }) test('uint64', () => { - expect(getABIResult('uint64', 0).returnValue).toBe(0n) - expect(getABIResult('uint64', 1).returnValue).toBe(1n) - expect(getABIResult('uint64', 2 ** 32 - 1).returnValue).toBe(2n ** 32n - 1n) - expect(getABIResult('uint64', 2n ** 64n - 1n).returnValue).toBe(2n ** 64n - 1n) + expect(encodeThenDecodeValue('uint64', 0)).toBe(0n) + expect(encodeThenDecodeValue('uint64', 1)).toBe(1n) + expect(encodeThenDecodeValue('uint64', 2 ** 32 - 1)).toBe(2n ** 32n - 1n) + expect(encodeThenDecodeValue('uint64', 2n ** 64n - 1n)).toBe(2n ** 64n - 1n) }) test('uint32[]', () => { - expect(getABIResult('uint32[]', [0]).returnValue).toEqual([0]) - expect(getABIResult('uint32[]', [0n]).returnValue).toEqual([0]) - expect(getABIResult('uint32[]', [1]).returnValue).toEqual([1]) - expect(getABIResult('uint32[]', [1n]).returnValue).toEqual([1]) - expect(getABIResult('uint32[]', [1, 2, 3]).returnValue).toEqual([1, 2, 3]) - expect(getABIResult('uint32[]', [1n, 2n, 3]).returnValue).toEqual([1, 2, 3]) - expect(getABIResult('uint32[]', [2 ** 32 - 1]).returnValue).toEqual([2 ** 32 - 1]) - expect(getABIResult('uint32[]', [2n ** 32n - 1n, 1]).returnValue).toEqual([2 ** 32 - 1, 1]) + expect(encodeThenDecodeValue('uint32[]', [0])).toEqual([0]) + expect(encodeThenDecodeValue('uint32[]', [0n])).toEqual([0]) + expect(encodeThenDecodeValue('uint32[]', [1])).toEqual([1]) + expect(encodeThenDecodeValue('uint32[]', [1n])).toEqual([1]) + expect(encodeThenDecodeValue('uint32[]', [1, 2, 3])).toEqual([1, 2, 3]) + expect(encodeThenDecodeValue('uint32[]', [1n, 2n, 3])).toEqual([1, 2, 3]) + expect(encodeThenDecodeValue('uint32[]', [2 ** 32 - 1])).toEqual([2 ** 32 - 1]) + expect(encodeThenDecodeValue('uint32[]', [2n ** 32n - 1n, 1])).toEqual([2 ** 32 - 1, 1]) }) test('uint32[n]', () => { - expect(getABIResult('uint32[1]', [0]).returnValue).toEqual([0]) - expect(getABIResult('uint32[1]', [0n]).returnValue).toEqual([0]) - expect(getABIResult('uint32[1]', [1]).returnValue).toEqual([1]) - expect(getABIResult('uint32[1]', [1n]).returnValue).toEqual([1]) - expect(getABIResult('uint32[3]', [1, 2, 3]).returnValue).toEqual([1, 2, 3]) - expect(getABIResult('uint32[3]', [1n, 2n, 3]).returnValue).toEqual([1, 2, 3]) - expect(getABIResult('uint32[1]', [2 ** 32 - 1]).returnValue).toEqual([2 ** 32 - 1]) - expect(getABIResult('uint32[2]', [2n ** 32n - 1n, 1]).returnValue).toEqual([2 ** 32 - 1, 1]) + expect(encodeThenDecodeValue('uint32[1]', [0])).toEqual([0]) + expect(encodeThenDecodeValue('uint32[1]', [0n])).toEqual([0]) + expect(encodeThenDecodeValue('uint32[1]', [1])).toEqual([1]) + expect(encodeThenDecodeValue('uint32[1]', [1n])).toEqual([1]) + expect(encodeThenDecodeValue('uint32[3]', [1, 2, 3])).toEqual([1, 2, 3]) + expect(encodeThenDecodeValue('uint32[3]', [1n, 2n, 3])).toEqual([1, 2, 3]) + expect(encodeThenDecodeValue('uint32[1]', [2 ** 32 - 1])).toEqual([2 ** 32 - 1]) + expect(encodeThenDecodeValue('uint32[2]', [2n ** 32n - 1n, 1])).toEqual([2 ** 32 - 1, 1]) }) test('uint64[]', () => { - expect(getABIResult('uint64[]', [0]).returnValue).toEqual([0n]) - expect(getABIResult('uint64[]', [0n]).returnValue).toEqual([0n]) - expect(getABIResult('uint64[]', [1]).returnValue).toEqual([1n]) - expect(getABIResult('uint64[]', [1n]).returnValue).toEqual([1n]) - expect(getABIResult('uint64[]', [1, 2, 3]).returnValue).toEqual([1n, 2n, 3n]) - expect(getABIResult('uint64[]', [1n, 2n, 3]).returnValue).toEqual([1n, 2n, 3n]) - expect(getABIResult('uint64[]', [2 ** 32 - 1]).returnValue).toEqual([2n ** 32n - 1n]) - expect(getABIResult('uint64[]', [2n ** 64n - 1n, 1]).returnValue).toEqual([2n ** 64n - 1n, 1n]) + expect(encodeThenDecodeValue('uint64[]', [0])).toEqual([0n]) + expect(encodeThenDecodeValue('uint64[]', [0n])).toEqual([0n]) + expect(encodeThenDecodeValue('uint64[]', [1])).toEqual([1n]) + expect(encodeThenDecodeValue('uint64[]', [1n])).toEqual([1n]) + expect(encodeThenDecodeValue('uint64[]', [1, 2, 3])).toEqual([1n, 2n, 3n]) + expect(encodeThenDecodeValue('uint64[]', [1n, 2n, 3])).toEqual([1n, 2n, 3n]) + expect(encodeThenDecodeValue('uint64[]', [2 ** 32 - 1])).toEqual([2n ** 32n - 1n]) + expect(encodeThenDecodeValue('uint64[]', [2n ** 64n - 1n, 1])).toEqual([2n ** 64n - 1n, 1n]) }) test('uint64[n]', () => { - expect(getABIResult('uint64[1]', [0]).returnValue).toEqual([0n]) - expect(getABIResult('uint64[1]', [0n]).returnValue).toEqual([0n]) - expect(getABIResult('uint64[1]', [1]).returnValue).toEqual([1n]) - expect(getABIResult('uint64[1]', [1n]).returnValue).toEqual([1n]) - expect(getABIResult('uint64[3]', [1, 2, 3]).returnValue).toEqual([1n, 2n, 3n]) - expect(getABIResult('uint64[3]', [1n, 2n, 3]).returnValue).toEqual([1n, 2n, 3n]) - expect(getABIResult('uint64[1]', [2 ** 32 - 1]).returnValue).toEqual([2n ** 32n - 1n]) - expect(getABIResult('uint64[2]', [2n ** 64n - 1n, 1]).returnValue).toEqual([2n ** 64n - 1n, 1n]) + expect(encodeThenDecodeValue('uint64[1]', [0])).toEqual([0n]) + expect(encodeThenDecodeValue('uint64[1]', [0n])).toEqual([0n]) + expect(encodeThenDecodeValue('uint64[1]', [1])).toEqual([1n]) + expect(encodeThenDecodeValue('uint64[1]', [1n])).toEqual([1n]) + expect(encodeThenDecodeValue('uint64[3]', [1, 2, 3])).toEqual([1n, 2n, 3n]) + expect(encodeThenDecodeValue('uint64[3]', [1n, 2n, 3])).toEqual([1n, 2n, 3n]) + expect(encodeThenDecodeValue('uint64[1]', [2 ** 32 - 1])).toEqual([2n ** 32n - 1n]) + expect(encodeThenDecodeValue('uint64[2]', [2n ** 64n - 1n, 1])).toEqual([2n ** 64n - 1n, 1n]) }) test('(uint32,uint64,(uint32,uint64),uint32[],uint64[])', () => { const type = '(uint32,uint64,(uint32,uint64),uint32[],uint64[])' - expect(getABIResult(type, [0, 0, [0, 0], [0], [0]]).returnValue).toEqual([0, 0n, [0, 0n], [0], [0n]]) - expect(getABIResult(type, [1, 1, [1, 1], [1], [1]]).returnValue).toEqual([1, 1n, [1, 1n], [1], [1n]]) - expect(getABIResult(type, [2 ** 32 - 1, 2n ** 64n - 1n, [2 ** 32 - 1, 2n ** 64n - 1n], [1, 2, 3], [1, 2, 3]]).returnValue).toEqual([ + expect(encodeThenDecodeValue(type, [0, 0, [0, 0], [0], [0]])).toEqual([0, 0n, [0, 0n], [0], [0n]]) + expect(encodeThenDecodeValue(type, [1, 1, [1, 1], [1], [1]])).toEqual([1, 1n, [1, 1n], [1], [1n]]) + expect(encodeThenDecodeValue(type, [2 ** 32 - 1, 2n ** 64n - 1n, [2 ** 32 - 1, 2n ** 64n - 1n], [1, 2, 3], [1, 2, 3]])).toEqual([ 2 ** 32 - 1, 2n ** 64n - 1n, [2 ** 32 - 1, 2n ** 64n - 1n], diff --git a/src/types/app-deployer.ts b/src/types/app-deployer.ts index d6c55e944..cee468ab7 100644 --- a/src/types/app-deployer.ts +++ b/src/types/app-deployer.ts @@ -1,3 +1,4 @@ +import { ABIReturn } from '@algorandfoundation/algokit-abi' import { TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { Address } from '@algorandfoundation/sdk' @@ -9,7 +10,6 @@ import { APP_DEPLOY_NOTE_DAPP, OnSchemaBreak, OnUpdate, - type ABIReturn, type AppDeployMetadata, type SendAppCreateTransactionResult, type SendAppUpdateTransactionResult, diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index 55c5fc0ca..ec05b449d 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -791,7 +791,6 @@ describe('ARC56: app-factory-and-app-client', () => { await localnet.newScope() factory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this appSpec: arc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -799,7 +798,6 @@ describe('ARC56: app-factory-and-app-client', () => { test('ARC56 error messages from inner app error', async () => { const innerFactory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this appSpec: errorInnerAppArc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -807,7 +805,6 @@ describe('ARC56: app-factory-and-app-client', () => { const { appClient: innerClient } = await innerFactory.deploy({ createParams: { method: 'createApplication' } }) const middleFactory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this appSpec: errorMiddleAppArc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -815,7 +812,6 @@ describe('ARC56: app-factory-and-app-client', () => { const { appClient: middleClient } = await middleFactory.deploy({ createParams: { method: 'createApplication' } }) const outerFactory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this appSpec: errorOuterAppArc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -829,7 +825,6 @@ describe('ARC56: app-factory-and-app-client', () => { test('ARC56 error message on deploy', async () => { const deployErrorFactory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this appSpec: deployErrorAppArc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -892,7 +887,6 @@ describe('ARC56: app-factory-and-app-client', () => { const appClient = localnet.algorand.client.getAppClientById({ appId, defaultSender: localnet.context.testAccount.addr, - // @ts-expect-error TODO: Fix this appSpec: arc56Json, }) diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index e803316c8..1a3b2e7c2 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -1,5 +1,6 @@ +import { ABIMethod, ABIValue, Arc56Contract, decodeABIValue, findABIMethod } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' -import { ABIValue, Address, ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' +import { Address, ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' import { TransactionSignerAccount } from './account' import { type AlgorandClient } from './algorand-client' import { @@ -10,15 +11,6 @@ import { TealTemplateParams, UPDATABLE_TEMPLATE_NAME, } from './app' -import { - ABIStruct, - Arc56Contract, - Arc56Method, - getABIDecodedValue, - getABITupleFromABIStruct, - getArc56Method, - getArc56ReturnValue, -} from './app-arc56' import { AppClient, AppClientBareCallParams, @@ -36,7 +28,7 @@ import { DeployAppUpdateParams, } from './app-deployer' import { AppSpec } from './app-spec' -import { AppCreateMethodCall, AppCreateParams, AppMethodCall, AppMethodCallTransactionArgument, CommonAppCallParams } from './composer' +import { AppCreateMethodCall, AppCreateParams, AppMethodCall, CommonAppCallParams } from './composer' import { Expand } from './expand' import { SendParams } from './transaction' @@ -315,7 +307,7 @@ export class AppFactory { const result = await this.handleCallErrors(async () => this.parseMethodCallReturn( this._algorand.send.appCreateMethodCall(await this.params.create({ ...params, updatable, deletable, deployTimeParams })), - getArc56Method(params.method, this._appSpec), + findABIMethod(params.method, this._appSpec), ), ) return { @@ -412,16 +404,13 @@ export class AppFactory { 'return' in result ? result.operationPerformed === 'update' ? params.updateParams && 'method' in params.updateParams - ? getArc56ReturnValue(result.return, getArc56Method(params.updateParams.method, this._appSpec), this._appSpec.structs) + ? result.return : undefined : params.createParams && 'method' in params.createParams - ? getArc56ReturnValue(result.return, getArc56Method(params.createParams.method, this._appSpec), this._appSpec.structs) + ? result.return : undefined : undefined, - deleteReturn: - 'deleteReturn' in result && params.deleteParams && 'method' in params.deleteParams - ? getArc56ReturnValue(result.deleteReturn, getArc56Method(params.deleteParams.method, this._appSpec), this._appSpec.structs) - : undefined, + deleteReturn: 'deleteReturn' in result && params.deleteParams && 'method' in params.deleteParams ? result.return : undefined, }, } } @@ -652,7 +641,7 @@ export class AppFactory { ...params, sender: this.getSender(params.sender), signer: this.getSigner(params.sender, params.signer), - method: getArc56Method(params.method, this._appSpec), + method: findABIMethod(params.method, this._appSpec), args: this.getCreateABIArgsWithDefaultValues(params.method, params.args), onComplete, } @@ -662,20 +651,17 @@ export class AppFactory { methodNameOrSignature: string, args: AppClientMethodCallParams['args'] | undefined, ): AppMethodCall['args'] { - const m = getArc56Method(methodNameOrSignature, this._appSpec) + const m = findABIMethod(methodNameOrSignature, this._appSpec) return args?.map((a, i) => { const arg = m.args[i] if (a !== undefined) { - // If a struct then convert to tuple for the underlying call - return arg.struct && typeof a === 'object' && !Array.isArray(a) - ? getABITupleFromABIStruct(a as ABIStruct, this._appSpec.structs[arg.struct], this._appSpec.structs) - : (a as ABIValue | AppMethodCallTransactionArgument) + return a } const defaultValue = arg.defaultValue if (defaultValue) { switch (defaultValue.source) { case 'literal': - return getABIDecodedValue(Buffer.from(defaultValue.data, 'base64'), m.method.args[i].type, this._appSpec.structs) as ABIValue + return decodeABIValue(m.args[i].argType, Buffer.from(defaultValue.data, 'base64')) default: throw new Error(`Can't provide default value for ${defaultValue.source} for a contract creation call`) } @@ -714,9 +700,9 @@ export class AppFactory { * @returns The smart contract response with an updated return value */ async parseMethodCallReturn< - TReturn extends Uint8Array | ABIValue | ABIStruct | undefined, + TReturn extends Uint8Array | ABIValue | undefined, TResult extends SendAppTransactionResult = SendAppTransactionResult, - >(result: Promise | TResult, method: Arc56Method): Promise & AppReturn> { + >(result: Promise | TResult, method: ABIMethod): Promise & AppReturn> { const resultValue = await result return { ...resultValue, return: getArc56ReturnValue(resultValue.return, method, this._appSpec.structs) } } From 28a71895dfa1ea3475ef0b6dafc01cfa9061ad4e Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 21 Nov 2025 11:24:27 +1000 Subject: [PATCH 06/43] wip - default value + AVM --- packages/abi/src/abi-method.ts | 53 ++++++++++++++++++++++---------- packages/abi/src/index.ts | 8 +++-- src/transaction/legacy-bridge.ts | 2 +- src/transactions/method-call.ts | 10 +++--- src/types/app-factory.ts | 14 ++++++--- 5 files changed, 57 insertions(+), 30 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 67650fb0f..ee4224df0 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -1,8 +1,8 @@ import sha512 from 'js-sha512' -import { ABIType, getABIStructType, getABIType, getABITypeName, parseTupleContent } from './abi-type' +import { ABIType, decodeABIValue, getABIStructType, getABIType, getABITypeName, parseTupleContent } from './abi-type' import { ABIValue } from './abi-value' import { ARC28Event } from './arc28-event' -import { Arc56Contract, Arc56Method } from './arc56-contract' +import { AVMType, Arc56Contract, Arc56Method } from './arc56-contract' export enum ABITransactionType { Txn = 'txn', @@ -19,10 +19,10 @@ export enum ABIReferenceType { Asset = 'asset', } export type ABIMethodArgType = ABIType | ABITransactionType | ABIReferenceType -export type ABIReturnType = ABIType | 'void' +export type ABIMethodReturnType = ABIType | 'void' export type ABIMethodArg = { - argType: ABIMethodArgType + type: ABIMethodArgType name?: string desciption?: string // TODO: PD - implement default value @@ -30,7 +30,7 @@ export type ABIMethodArg = { } export type ABIMethodReturn = { - type: ABIReturnType + type: ABIMethodReturnType description?: string } @@ -40,7 +40,7 @@ export type ABIDefaultValue = { /** Where the default value is coming from */ source: DefaultValueSource /** How the data is encoded. This is the encoding for the data provided here, not the arg type */ - valueType?: ABIType + type?: ABIType | AVMType } export enum DefaultValueSource { @@ -153,10 +153,10 @@ export function getABIMethod(signature: string): ABIMethod { const name = signature.slice(0, argsStart) const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)) // hmmm the error is bad .map((n: string) => { - if (abiTypeIsTransaction(n as ABIMethodArgType) || abiTypeIsReference(n as ABIMethodArgType)) { - return { argType: n as ABIMethodArgType } satisfies ABIMethodArg + if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) { + return { type: n as ABIMethodArgType } satisfies ABIMethodArg } - return { argType: getABIType(n) } satisfies ABIMethodArg + return { type: getABIType(n) } satisfies ABIMethodArg }) const returnType = signature.slice(argsEnd + 1) const returns = { type: returnType === 'void' ? ('void' as const) : getABIType(returnType) } satisfies ABIMethodReturn @@ -176,8 +176,8 @@ export function getABIMethod(signature: string): ABIMethod { export function getABIMethodSignature(abiMethod: ABIMethod): string { const args = abiMethod.args .map((arg) => { - if (abiTypeIsTransaction(arg.argType) || abiTypeIsReference(arg.argType)) return arg.argType - return getABITypeName(arg.argType) + if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type + return getABITypeName(arg.type) }) .join(',') const returns = abiMethod.returns.type === 'void' ? 'void' : getABITypeName(abiMethod.returns.type) @@ -200,9 +200,9 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB } const args = method.args.map(({ type, name, desc, struct }) => { - if (abiTypeIsTransaction(type as ABIMethodArgType) || abiTypeIsReference(type as ABIMethodArgType)) { + if (argTypeIsTransaction(type as ABIMethodArgType) || argTypeIsReference(type as ABIMethodArgType)) { return { - argType: type as ABIMethodArgType, + type: type as ABIMethodArgType, name, desciption: desc, } satisfies ABIMethodArg @@ -210,14 +210,14 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB if (struct) { return { - argType: getABIStructType(struct, appSpec.structs), + type: getABIStructType(struct, appSpec.structs), name, desciption: desc, } satisfies ABIMethodArg } return { - argType: getABIType(type), + type: getABIType(type), name, desciption: desc, } satisfies ABIMethodArg @@ -243,7 +243,7 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB } satisfies ABIMethod } -export function abiTypeIsTransaction(type: ABIMethodArgType): type is ABITransactionType { +export function argTypeIsTransaction(type: ABIMethodArgType): type is ABITransactionType { return ( typeof type === 'string' && (type === ABITransactionType.Txn || @@ -256,15 +256,34 @@ export function abiTypeIsTransaction(type: ABIMethodArgType): type is ABITransac ) } -export function abiTypeIsReference(type: ABIMethodArgType): type is ABIReferenceType { +export function argTypeIsReference(type: ABIMethodArgType): type is ABIReferenceType { return ( typeof type === 'string' && (type === ABIReferenceType.Account || type === ABIReferenceType.Application || type === ABIReferenceType.Asset) ) } +export function argTypeIsAbiType(type: ABIMethodArgType): type is ABIType { + return !argTypeIsTransaction(type) && !argTypeIsReference(type) +} + function getArc56MethodSignature(method: Arc56Method): string { const args = method.args.map((arg) => arg.type).join(',') const returns = method.returns.type return `${method.name}(${args})${returns}` } + +export const decodeAVMValue = (avmType: AVMType, bytes: Uint8Array) => { + switch (avmType) { + case 'AVMString': + return Buffer.from(bytes).toString('utf-8') + case 'AVMBytes': + return bytes + case 'AVMUint64': + return decodeABIValue(getABIType('uint64'), bytes) + } +} + +export function isAVMType(type: unknown): type is AVMType { + return typeof type === 'string' && (type === 'AVMString' || type === 'AVMBytes' || type === 'AVMUint64') +} diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index 5cace5ba5..87be4587a 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -1,12 +1,14 @@ export { - abiTypeIsReference, - abiTypeIsTransaction, + argTypeIsReference, + argTypeIsTransaction, + decodeAVMValue, findABIMethod, getABIMethod, getABIMethodSelector, getABIMethodSignature, + isAVMType, } from './abi-method' -export type { ABIMethod, ABIReferenceType, ABIReturn, ABIReturnType } from './abi-method' +export type { ABIMethod, ABIReferenceType, ABIReturn, ABIMethodReturnType as ABIReturnType } from './abi-method' export { ABITypeName, decodeABIValue, encodeABIValue, encodeTuple, getABIType, getABITypeName, parseTupleContent } from './abi-type' export type { ABIAddressType, diff --git a/src/transaction/legacy-bridge.ts b/src/transaction/legacy-bridge.ts index 89f75f2b3..3ad804cdd 100644 --- a/src/transaction/legacy-bridge.ts +++ b/src/transaction/legacy-bridge.ts @@ -147,7 +147,7 @@ export async function _getAppArgsForABICall(args: ABIAppCallArgs, from: SendTran } // Handle transaction args separately to avoid conflicts with ABIStructValue - const abiArgumentType = args.method.args.at(index)!.argType + const abiArgumentType = args.method.args.at(index)!.type if (abiTypeIsTransaction(abiArgumentType)) { const t = a as TransactionWithSigner | TransactionToSign | Transaction | Promise | SendTransactionResult return 'txn' in t diff --git a/src/transactions/method-call.ts b/src/transactions/method-call.ts index a9c75d436..cbebc92b8 100644 --- a/src/transactions/method-call.ts +++ b/src/transactions/method-call.ts @@ -235,7 +235,7 @@ function populateMethodArgsIntoReferenceArrays( const apps = appReferences ?? [] methodArgs.forEach((arg, i) => { - const argType = method.args[i].argType + const argType = method.args[i].type if (abiTypeIsReference(argType)) { switch (argType) { case 'account': @@ -330,11 +330,11 @@ function encodeMethodArguments( const methodArg = method.args[i] const argValue = args[i] - if (abiTypeIsTransaction(methodArg.argType)) { + if (abiTypeIsTransaction(methodArg.type)) { // Transaction arguments are not ABI encoded - they're handled separately - } else if (abiTypeIsReference(methodArg.argType)) { + } else if (abiTypeIsReference(methodArg.type)) { // Reference types are encoded as uint8 indexes - const referenceType = methodArg.argType + const referenceType = methodArg.type if (typeof argValue === 'string' || typeof argValue === 'bigint') { const foreignIndex = calculateMethodArgReferenceArrayIndex( argValue, @@ -353,7 +353,7 @@ function encodeMethodArguments( } } else if (argValue !== undefined) { // Regular ABI value - abiTypes.push(methodArg.argType) + abiTypes.push(methodArg.type) // it's safe to cast to ABIValue here because the abiType must be ABIValue abiValues.push(argValue as ABIValue) } diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index 1a3b2e7c2..1d957ca90 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -1,4 +1,6 @@ -import { ABIMethod, ABIValue, Arc56Contract, decodeABIValue, findABIMethod } from '@algorandfoundation/algokit-abi' +import { ABIValue, Arc56Contract, decodeABIValue, findABIMethod, isAVMType } from '@algorandfoundation/algokit-abi' +import { ABIMethod, argTypeIsAbiType } from '@algorandfoundation/algokit-abi/abi-method' +import { decodeAVMValue } from '@algorandfoundation/algokit-abi/avm-type' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import { Address, ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' import { TransactionSignerAccount } from './account' @@ -647,6 +649,7 @@ export class AppFactory { } } + // TODO: PD - confirm why only getCreateABIArgs, and nothing for update/delete private getCreateABIArgsWithDefaultValues( methodNameOrSignature: string, args: AppClientMethodCallParams['args'] | undefined, @@ -658,10 +661,13 @@ export class AppFactory { return a } const defaultValue = arg.defaultValue - if (defaultValue) { + if (defaultValue && argTypeIsAbiType(arg.type)) { switch (defaultValue.source) { - case 'literal': - return decodeABIValue(m.args[i].argType, Buffer.from(defaultValue.data, 'base64')) + case 'literal': { + const bytes = Buffer.from(defaultValue.data, 'base64') + const type = defaultValue.type ?? arg.type + return isAVMType(type) ? decodeAVMValue(type, bytes) : decodeABIValue(type, bytes) + } default: throw new Error(`Can't provide default value for ${defaultValue.source} for a contract creation call`) } From 0c9aec2c21263f3dff0bc9d6e909a243ac7f2294 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 21 Nov 2025 12:10:22 +1000 Subject: [PATCH 07/43] wip - AVM types + default values --- packages/abi/src/abi-method.ts | 2 +- packages/abi/src/index.ts | 2 +- src/transaction/legacy-bridge.ts | 4 +-- src/transactions/method-call.ts | 10 +++--- src/types/app-client.ts | 41 ++++++++++++------------ src/types/app-factory-and-client.spec.ts | 8 +++++ src/types/app-factory.ts | 37 +++------------------ 7 files changed, 42 insertions(+), 62 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index ee4224df0..967c331d1 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -30,7 +30,7 @@ export type ABIMethodArg = { } export type ABIMethodReturn = { - type: ABIMethodReturnType + type: ABIType | 'void' description?: string } diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index 87be4587a..70864bf71 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -8,7 +8,7 @@ export { getABIMethodSignature, isAVMType, } from './abi-method' -export type { ABIMethod, ABIReferenceType, ABIReturn, ABIMethodReturnType as ABIReturnType } from './abi-method' +export type { ABIMethod, ABIReferenceType, ABIReturn } from './abi-method' export { ABITypeName, decodeABIValue, encodeABIValue, encodeTuple, getABIType, getABITypeName, parseTupleContent } from './abi-type' export type { ABIAddressType, diff --git a/src/transaction/legacy-bridge.ts b/src/transaction/legacy-bridge.ts index 3ad804cdd..d8428fa27 100644 --- a/src/transaction/legacy-bridge.ts +++ b/src/transaction/legacy-bridge.ts @@ -1,4 +1,4 @@ -import { ABIValue, abiTypeIsTransaction } from '@algorandfoundation/algokit-abi' +import { ABIValue, argTypeIsTransaction } from '@algorandfoundation/algokit-abi' import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { BoxReference as TransactBoxReference, Transaction } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' @@ -148,7 +148,7 @@ export async function _getAppArgsForABICall(args: ABIAppCallArgs, from: SendTran // Handle transaction args separately to avoid conflicts with ABIStructValue const abiArgumentType = args.method.args.at(index)!.type - if (abiTypeIsTransaction(abiArgumentType)) { + if (argTypeIsTransaction(abiArgumentType)) { const t = a as TransactionWithSigner | TransactionToSign | Transaction | Promise | SendTransactionResult return 'txn' in t ? t diff --git a/src/transactions/method-call.ts b/src/transactions/method-call.ts index cbebc92b8..50b03d3f4 100644 --- a/src/transactions/method-call.ts +++ b/src/transactions/method-call.ts @@ -4,8 +4,8 @@ import { ABIType, ABITypeName, ABIValue, - abiTypeIsReference, - abiTypeIsTransaction, + argTypeIsReference, + argTypeIsTransaction, encodeABIValue, getABIMethodSelector, } from '@algorandfoundation/algokit-abi' @@ -236,7 +236,7 @@ function populateMethodArgsIntoReferenceArrays( methodArgs.forEach((arg, i) => { const argType = method.args[i].type - if (abiTypeIsReference(argType)) { + if (argTypeIsReference(argType)) { switch (argType) { case 'account': if (typeof arg === 'string' && arg !== sender && !accounts.includes(arg)) { @@ -330,9 +330,9 @@ function encodeMethodArguments( const methodArg = method.args[i] const argValue = args[i] - if (abiTypeIsTransaction(methodArg.type)) { + if (argTypeIsTransaction(methodArg.type)) { // Transaction arguments are not ABI encoded - they're handled separately - } else if (abiTypeIsReference(methodArg.type)) { + } else if (argTypeIsReference(methodArg.type)) { // Reference types are encoded as uint8 indexes const referenceType = methodArg.type if (typeof argValue === 'string' || typeof argValue === 'bigint') { diff --git a/src/types/app-client.ts b/src/types/app-client.ts index 39cc6c13c..b824d367d 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1,4 +1,15 @@ -import { ABIMethod, ABIType, ABIValue, Arc56Contract, ProgramSourceInfo, findABIMethod } from '@algorandfoundation/algokit-abi' +import { + ABIMethod, + ABIType, + ABIValue, + Arc56Contract, + ProgramSourceInfo, + decodeABIValue, + decodeAVMValue, + findABIMethod, + isAVMType, +} from '@algorandfoundation/algokit-abi' +import { argTypeIsAbiType } from '@algorandfoundation/algokit-abi/abi-method' import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' @@ -1087,20 +1098,17 @@ export class AppClient { throw new Error(`Unexpected arg at position ${i}. ${m.name} only expects ${m.args.length} args`) } if (a !== undefined) { - // If a struct then convert to tuple for the underlying call - return arg.struct && typeof a === 'object' && !Array.isArray(a) - ? getABITupleFromABIStruct(a as ABIStruct, this._appSpec.structs[arg.struct], this._appSpec.structs) - : (a as ABIValue | AppMethodCallTransactionArgument) + return a } const defaultValue = arg.defaultValue - if (defaultValue) { + // TODO: PD - confirm if checking argTypeIsAbiType(arg.type) is correct + if (defaultValue && argTypeIsAbiType(arg.type)) { switch (defaultValue.source) { - case 'literal': - return getABIDecodedValue( - Buffer.from(defaultValue.data, 'base64'), - m.method.args[i].defaultValue?.type ?? m.method.args[i].type, - this._appSpec.structs, - ) as ABIValue + case 'literal': { + const bytes = Buffer.from(defaultValue.data, 'base64') + const type = defaultValue.type ?? arg.type + return isAVMType(type) ? decodeAVMValue(type, bytes) : decodeABIValue(type, bytes) + } case 'method': { const method = this.getABIMethod(defaultValue.data) const result = await this.send.call({ @@ -1112,14 +1120,7 @@ export class AppClient { if (result.return === undefined) { throw new Error('Default value method call did not return a value') } - if ( - typeof result.return === 'object' && - !(result.return instanceof Uint8Array) && - !Array.isArray(result.return) && - !(result.return instanceof Address) - ) { - return getABITupleFromABIStruct(result.return, this._appSpec.structs[method.returns.struct!], this._appSpec.structs) - } + // TODO: PD - confirm that we don't need to convert struct returned value to tuple anymore return result.return } case 'local': diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index ec05b449d..dc52bafc7 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -791,6 +791,7 @@ describe('ARC56: app-factory-and-app-client', () => { await localnet.newScope() factory = localnet.algorand.client.getAppFactory({ + // @ts-expect-error TODO: Fix this appSpec: arc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -798,6 +799,7 @@ describe('ARC56: app-factory-and-app-client', () => { test('ARC56 error messages from inner app error', async () => { const innerFactory = localnet.algorand.client.getAppFactory({ + // @ts-expect-error TODO: Fix this appSpec: errorInnerAppArc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -805,6 +807,7 @@ describe('ARC56: app-factory-and-app-client', () => { const { appClient: innerClient } = await innerFactory.deploy({ createParams: { method: 'createApplication' } }) const middleFactory = localnet.algorand.client.getAppFactory({ + // @ts-expect-error TODO: Fix this appSpec: errorMiddleAppArc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -812,6 +815,7 @@ describe('ARC56: app-factory-and-app-client', () => { const { appClient: middleClient } = await middleFactory.deploy({ createParams: { method: 'createApplication' } }) const outerFactory = localnet.algorand.client.getAppFactory({ + // @ts-expect-error TODO: Fix this appSpec: errorOuterAppArc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -825,6 +829,7 @@ describe('ARC56: app-factory-and-app-client', () => { test('ARC56 error message on deploy', async () => { const deployErrorFactory = localnet.algorand.client.getAppFactory({ + // @ts-expect-error TODO: Fix this appSpec: deployErrorAppArc56Json, defaultSender: localnet.context.testAccount.addr, }) @@ -887,9 +892,12 @@ describe('ARC56: app-factory-and-app-client', () => { const appClient = localnet.algorand.client.getAppClientById({ appId, defaultSender: localnet.context.testAccount.addr, + // @ts-expect-error TODO: Fix this appSpec: arc56Json, }) + // TODO: PD - investigate Fix this + try { await appClient.send.call({ method: 'tmpl' }) throw Error('should not get here') diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index 1d957ca90..6ff55b7cd 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -1,18 +1,10 @@ -import { ABIValue, Arc56Contract, decodeABIValue, findABIMethod, isAVMType } from '@algorandfoundation/algokit-abi' -import { ABIMethod, argTypeIsAbiType } from '@algorandfoundation/algokit-abi/abi-method' -import { decodeAVMValue } from '@algorandfoundation/algokit-abi/avm-type' +import { Arc56Contract, decodeABIValue, findABIMethod, isAVMType } from '@algorandfoundation/algokit-abi' +import { argTypeIsAbiType, decodeAVMValue } from '@algorandfoundation/algokit-abi/abi-method' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import { Address, ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' import { TransactionSignerAccount } from './account' import { type AlgorandClient } from './algorand-client' -import { - AppCompilationResult, - AppReturn, - DELETABLE_TEMPLATE_NAME, - SendAppTransactionResult, - TealTemplateParams, - UPDATABLE_TEMPLATE_NAME, -} from './app' +import { AppCompilationResult, DELETABLE_TEMPLATE_NAME, TealTemplateParams, UPDATABLE_TEMPLATE_NAME } from './app' import { AppClient, AppClientBareCallParams, @@ -307,10 +299,7 @@ export class AppFactory { const deployTimeParams = params?.deployTimeParams ?? this._deployTimeParams const compiled = await this.compile({ deployTimeParams, updatable, deletable }) const result = await this.handleCallErrors(async () => - this.parseMethodCallReturn( - this._algorand.send.appCreateMethodCall(await this.params.create({ ...params, updatable, deletable, deployTimeParams })), - findABIMethod(params.method, this._appSpec), - ), + this._algorand.send.appCreateMethodCall(await this.params.create({ ...params, updatable, deletable, deployTimeParams })), ) return { appClient: this.getAppClientById({ @@ -694,22 +683,4 @@ export class AppFactory { ): TransactionSigner | TransactionSignerAccount | undefined { return signer ?? (!sender || sender === this._defaultSender ? this._defaultSigner : undefined) } - - /** - * Checks for decode errors on the SendAppTransactionResult and maps the return value to the specified type - * on the ARC-56 method. - * - * If the return type is a struct then the struct will be returned. - * - * @param result The SendAppTransactionResult to be mapped - * @param method The method that was called - * @returns The smart contract response with an updated return value - */ - async parseMethodCallReturn< - TReturn extends Uint8Array | ABIValue | undefined, - TResult extends SendAppTransactionResult = SendAppTransactionResult, - >(result: Promise | TResult, method: ABIMethod): Promise & AppReturn> { - const resultValue = await result - return { ...resultValue, return: getArc56ReturnValue(resultValue.return, method, this._appSpec.structs) } - } } From be7173c5e3407483d9749abd210710982f56bbd8 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 21 Nov 2025 14:33:14 +1000 Subject: [PATCH 08/43] check type done --- packages/abi/src/abi-method.ts | 27 ++- packages/abi/src/arc56-contract.ts | 259 +++++++++++++++++++++++++++++ src/types/app-client.ts | 223 ++++++++++++------------- 3 files changed, 387 insertions(+), 122 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 967c331d1..bdc93122f 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -1,5 +1,5 @@ import sha512 from 'js-sha512' -import { ABIType, decodeABIValue, getABIStructType, getABIType, getABITypeName, parseTupleContent } from './abi-type' +import { ABIType, decodeABIValue, encodeABIValue, getABIStructType, getABIType, getABITypeName, parseTupleContent } from './abi-type' import { ABIValue } from './abi-value' import { ARC28Event } from './arc28-event' import { AVMType, Arc56Contract, Arc56Method } from './arc56-contract' @@ -273,7 +273,7 @@ function getArc56MethodSignature(method: Arc56Method): string { return `${method.name}(${args})${returns}` } -export const decodeAVMValue = (avmType: AVMType, bytes: Uint8Array) => { +export function decodeAVMValue(avmType: AVMType, bytes: Uint8Array): ABIValue { switch (avmType) { case 'AVMString': return Buffer.from(bytes).toString('utf-8') @@ -284,6 +284,29 @@ export const decodeAVMValue = (avmType: AVMType, bytes: Uint8Array) => { } } +export function encodeAVMValue(avmType: AVMType, value: ABIValue): Uint8Array { + switch (avmType) { + case 'AVMString': + return encodeABIValue(getABIType('string'), value) + case 'AVMBytes': + if (typeof value === 'string') return Buffer.from(value, 'utf-8') + if (typeof value !== 'object' || !(value instanceof Uint8Array)) + throw new Error(`Expected bytes value for AVMBytes, but got ${value}`) + return value + case 'AVMUint64': + return encodeABIValue(getABIType('uint64'), value) + } +} + +// TODO: PD - refactor external usage of this to decodeAVMOrABIValue export function isAVMType(type: unknown): type is AVMType { return typeof type === 'string' && (type === 'AVMString' || type === 'AVMBytes' || type === 'AVMUint64') } + +export function decodeAVMOrABIValue(type: AVMType | ABIType, bytes: Uint8Array): ABIValue { + return isAVMType(type) ? decodeAVMValue(type, bytes) : decodeABIValue(type, bytes) +} + +export function encodeAVMOrABIValue(type: AVMType | ABIType, value: ABIValue): Uint8Array { + return isAVMType(type) ? encodeAVMValue(type, value) : encodeABIValue(type, value) +} diff --git a/packages/abi/src/arc56-contract.ts b/packages/abi/src/arc56-contract.ts index 95817f39c..2704187d0 100644 --- a/packages/abi/src/arc56-contract.ts +++ b/packages/abi/src/arc56-contract.ts @@ -2,6 +2,32 @@ /** ARC-56 spec */ /****************/ +import { ABIType, getABIStructType, getABIType } from './abi-type' + +/** Describes a single key in app storage with parsed ABI types */ +export type ABIStorageKey = { + /** The bytes of the key encoded as base64 */ + key: string + /** The parsed type of the key (ABI type or AVM type) */ + keyType: ABIType | AVMType + /** The parsed type of the value (ABI type or AVM type) */ + valueType: ABIType | AVMType + /** Description of what this storage key holds */ + desc?: string +} + +/** Describes a storage map with parsed ABI types */ +export type ABIStorageMap = { + /** The parsed type of the keys in the map (ABI type or AVM type) */ + keyType: ABIType | AVMType + /** The parsed type of the values in the map (ABI type or AVM type) */ + valueType: ABIType | AVMType + /** Description of what the key-value pairs in this mapping hold */ + desc?: string + /** The base64-encoded prefix of the map keys */ + prefix?: string +} + /** Describes the entire contract. This type is an extension of the type described in ARC-4 */ export type Arc56Contract = { /** The ARCs used and/or supported by this contract. All contracts implicitly support ARC4 and ARC56 */ @@ -278,3 +304,236 @@ export type ProgramSourceInfo = { */ pcOffsetMethod: 'none' | 'cblocks' } + +/*************************/ +/** Storage Helper Functions */ +/*************************/ + +/** + * Resolves a storage type string (ABI type, AVM type, or struct name) into an ABIType or AVMType + * @param typeStr The type string to resolve + * @param structs The structs defined in the contract + * @returns The parsed ABIType or AVMType string + */ +function resolveStorageType(typeStr: string, structs: Record): ABIType | AVMType { + // Check if it's an AVM type + if (typeStr === 'AVMBytes' || typeStr === 'AVMString' || typeStr === 'AVMUint64') { + return typeStr as AVMType + } + + // Check if it's a struct type + if (structs[typeStr]) { + return getABIStructType(typeStr, structs) + } + + // Otherwise parse as ABI type + try { + return getABIType(typeStr) + } catch (error) { + throw new Error(`Failed to parse storage type '${typeStr}': ${error}`) + } +} + +/** + * Converts a StorageKey to an ABIStorageKey with parsed types + * @param storageKey The storage key to convert + * @param structs The structs defined in the contract + * @returns The converted ABIStorageKey + */ +function convertStorageKey(storageKey: StorageKey, structs: Record): ABIStorageKey { + const keyType = resolveStorageType(storageKey.keyType, structs) + const valueType = resolveStorageType(storageKey.valueType, structs) + + return { + key: storageKey.key, + keyType, + valueType, + desc: storageKey.desc, + } +} + +/** + * Converts a StorageMap to an ABIStorageMap with parsed types + * @param storageMap The storage map to convert + * @param structs The structs defined in the contract + * @returns The converted ABIStorageMap + */ +function convertStorageMap(storageMap: StorageMap, structs: Record): ABIStorageMap { + const keyType = resolveStorageType(storageMap.keyType, structs) + const valueType = resolveStorageType(storageMap.valueType, structs) + + return { + keyType, + valueType, + desc: storageMap.desc, + prefix: storageMap.prefix, + } +} + +/** + * Get a specific global storage key with parsed ABI types + * @param contract The ARC-56 contract + * @param keyName The name of the storage key + * @returns The ABIStorageKey with parsed types + * @throws Error if the key is not found + */ +export function getGlobalABIStorageKey(contract: Arc56Contract, keyName: string): ABIStorageKey { + const storageKey = contract.state.keys.global[keyName] + if (!storageKey) { + throw new Error(`Global storage key '${keyName}' not found in contract '${contract.name}'`) + } + return convertStorageKey(storageKey, contract.structs) +} + +/** + * Get a specific local storage key with parsed ABI types + * @param contract The ARC-56 contract + * @param keyName The name of the storage key + * @returns The ABIStorageKey with parsed types + * @throws Error if the key is not found + */ +export function getLocalABIStorageKey(contract: Arc56Contract, keyName: string): ABIStorageKey { + const storageKey = contract.state.keys.local[keyName] + if (!storageKey) { + throw new Error(`Local storage key '${keyName}' not found in contract '${contract.name}'`) + } + return convertStorageKey(storageKey, contract.structs) +} + +/** + * Get a specific box storage key with parsed ABI types + * @param contract The ARC-56 contract + * @param keyName The name of the storage key + * @returns The ABIStorageKey with parsed types + * @throws Error if the key is not found + */ +export function getBoxABIStorageKey(contract: Arc56Contract, keyName: string): ABIStorageKey { + const storageKey = contract.state.keys.box[keyName] + if (!storageKey) { + throw new Error(`Box storage key '${keyName}' not found in contract '${contract.name}'`) + } + return convertStorageKey(storageKey, contract.structs) +} + +/** + * Get all global storage keys with parsed ABI types + * @param contract The ARC-56 contract + * @returns A record of storage key names to ABIStorageKey objects + */ +export function getGlobalABIStorageKeys(contract: Arc56Contract): Record { + const result: Record = {} + for (const [name, storageKey] of Object.entries(contract.state.keys.global)) { + result[name] = convertStorageKey(storageKey, contract.structs) + } + return result +} + +/** + * Get all local storage keys with parsed ABI types + * @param contract The ARC-56 contract + * @returns A record of storage key names to ABIStorageKey objects + */ +export function getLocalABIStorageKeys(contract: Arc56Contract): Record { + const result: Record = {} + for (const [name, storageKey] of Object.entries(contract.state.keys.local)) { + result[name] = convertStorageKey(storageKey, contract.structs) + } + return result +} + +/** + * Get all box storage keys with parsed ABI types + * @param contract The ARC-56 contract + * @returns A record of storage key names to ABIStorageKey objects + */ +export function getBoxABIStorageKeys(contract: Arc56Contract): Record { + const result: Record = {} + for (const [name, storageKey] of Object.entries(contract.state.keys.box)) { + result[name] = convertStorageKey(storageKey, contract.structs) + } + return result +} + +/** + * Get a specific global storage map with parsed ABI types + * @param contract The ARC-56 contract + * @param mapName The name of the storage map + * @returns The ABIStorageMap with parsed types + * @throws Error if the map is not found + */ +export function getGlobalABIStorageMap(contract: Arc56Contract, mapName: string): ABIStorageMap { + const storageMap = contract.state.maps.global[mapName] + if (!storageMap) { + throw new Error(`Global storage map '${mapName}' not found in contract '${contract.name}'`) + } + return convertStorageMap(storageMap, contract.structs) +} + +/** + * Get a specific local storage map with parsed ABI types + * @param contract The ARC-56 contract + * @param mapName The name of the storage map + * @returns The ABIStorageMap with parsed types + * @throws Error if the map is not found + */ +export function getLocalABIStorageMap(contract: Arc56Contract, mapName: string): ABIStorageMap { + const storageMap = contract.state.maps.local[mapName] + if (!storageMap) { + throw new Error(`Local storage map '${mapName}' not found in contract '${contract.name}'`) + } + return convertStorageMap(storageMap, contract.structs) +} + +/** + * Get a specific box storage map with parsed ABI types + * @param contract The ARC-56 contract + * @param mapName The name of the storage map + * @returns The ABIStorageMap with parsed types + * @throws Error if the map is not found + */ +export function getBoxABIStorageMap(contract: Arc56Contract, mapName: string): ABIStorageMap { + const storageMap = contract.state.maps.box[mapName] + if (!storageMap) { + throw new Error(`Box storage map '${mapName}' not found in contract '${contract.name}'`) + } + return convertStorageMap(storageMap, contract.structs) +} + +/** + * Get all global storage maps with parsed ABI types + * @param contract The ARC-56 contract + * @returns A record of storage map names to ABIStorageMap objects + */ +export function getGlobalABIStorageMaps(contract: Arc56Contract): Record { + const result: Record = {} + for (const [name, storageMap] of Object.entries(contract.state.maps.global)) { + result[name] = convertStorageMap(storageMap, contract.structs) + } + return result +} + +/** + * Get all local storage maps with parsed ABI types + * @param contract The ARC-56 contract + * @returns A record of storage map names to ABIStorageMap objects + */ +export function getLocalABIStorageMaps(contract: Arc56Contract): Record { + const result: Record = {} + for (const [name, storageMap] of Object.entries(contract.state.maps.local)) { + result[name] = convertStorageMap(storageMap, contract.structs) + } + return result +} + +/** + * Get all box storage maps with parsed ABI types + * @param contract The ARC-56 contract + * @returns A record of storage map names to ABIStorageMap objects + */ +export function getBoxABIStorageMaps(contract: Arc56Contract): Record { + const result: Record = {} + for (const [name, storageMap] of Object.entries(contract.state.maps.box)) { + result[name] = convertStorageMap(storageMap, contract.structs) + } + return result +} diff --git a/src/types/app-client.ts b/src/types/app-client.ts index b824d367d..70df9a55a 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -9,7 +9,22 @@ import { findABIMethod, isAVMType, } from '@algorandfoundation/algokit-abi' -import { argTypeIsAbiType } from '@algorandfoundation/algokit-abi/abi-method' +import { + argTypeIsAbiType, + argTypeIsTransaction, + decodeAVMOrABIValue, + encodeAVMOrABIValue, +} from '@algorandfoundation/algokit-abi/abi-method' +import { + ABIStorageKey, + ABIStorageMap, + getBoxABIStorageKey, + getBoxABIStorageMap, + getGlobalABIStorageKeys, + getGlobalABIStorageMaps, + getLocalABIStorageKeys, + getLocalABIStorageMaps, +} from '@algorandfoundation/algokit-abi/arc56-contract' import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' @@ -287,28 +302,18 @@ export interface AppClientCompilationResult extends Partial { - const abiCallConfig = h.call_config[callConfigKey] - return !!abiCallConfig && abiCallConfig !== 'NEVER' - }) + return ( + appSpec.bareActions.call.includes(control === 'updatable' ? 'UpdateApplication' : 'DeleteApplication') || + Object.values(appSpec.methods).some((c) => c.actions.call.includes(control === 'updatable' ? 'UpdateApplication' : 'DeleteApplication')) + ) } /** Parameters to create an app client */ @@ -526,13 +531,13 @@ export class AppClient { this._localStateMethods = (address: string | Address) => this.getStateMethods( () => this.getLocalState(address), - () => this._appSpec.state.keys.local, - () => this._appSpec.state.maps.local, + () => getLocalABIStorageKeys(this._appSpec), + () => getLocalABIStorageMaps(this._appSpec), ) this._globalStateMethods = this.getStateMethods( () => this.getGlobalState(), - () => this._appSpec.state.keys.global, - () => this._appSpec.state.maps.global, + () => getGlobalABIStorageKeys(this._appSpec), + () => getGlobalABIStorageMaps(this._appSpec), ) this._boxStateMethods = this.getBoxMethods() @@ -1117,11 +1122,11 @@ export class AppClient { sender, }) - if (result.return === undefined) { + if (result.return?.returnValue === undefined) { throw new Error('Default value method call did not return a value') } // TODO: PD - confirm that we don't need to convert struct returned value to tuple anymore - return result.return + return result.return?.returnValue } case 'local': case 'global': { @@ -1132,25 +1137,15 @@ export class AppClient { `Preparing default value for argument ${arg.name ?? `arg${i + 1}`} resulted in the failure: The key '${defaultValue.data}' could not be found in ${defaultValue.source} storage`, ) } - return 'valueRaw' in value - ? (getABIDecodedValue( - value.valueRaw, - m.method.args[i].defaultValue?.type ?? m.method.args[i].type, - this._appSpec.structs, - ) as ABIValue) - : value.value + return 'valueRaw' in value ? decodeAVMOrABIValue(defaultValue.type ?? arg.type, value.valueRaw) : value.value } case 'box': { const value = await this.getBoxValue(Buffer.from(defaultValue.data, 'base64')) - return getABIDecodedValue( - value, - m.method.args[i].defaultValue?.type ?? m.method.args[i].type, - this._appSpec.structs, - ) as ABIValue + return decodeAVMOrABIValue(defaultValue.type ?? arg.type, value) } } } - if (!algosdk.abiTypeIsTransaction(arg.type)) { + if (!argTypeIsTransaction(arg.type)) { throw new Error(`No value provided for required argument ${arg.name ?? `arg${i + 1}`} in call to method ${m.name}`) } }) ?? [], @@ -1594,9 +1589,9 @@ export class AppClient { * @returns */ getValue: async (name: string) => { - const metadata = that._appSpec.state.keys.box[name] + const metadata = getBoxABIStorageKey(that._appSpec, name) const value = await that.getBoxValue(Buffer.from(metadata.key, 'base64')) - return getABIDecodedValue(value, metadata.valueType, that._appSpec.structs) + return decodeAVMOrABIValue(metadata.valueType, value) }, /** * @@ -1607,12 +1602,12 @@ export class AppClient { */ // eslint-disable-next-line @typescript-eslint/no-explicit-any getMapValue: async (mapName: string, key: Uint8Array | any) => { - const metadata = that._appSpec.state.maps.box[mapName] + const metadata = getBoxABIStorageMap(that._appSpec, mapName) const prefix = Buffer.from(metadata.prefix ?? '', 'base64') - const encodedKey = Buffer.concat([prefix, getABIEncodedValue(key, metadata.keyType, that._appSpec.structs)]) + const encodedKey = Buffer.concat([prefix, encodeAVMOrABIValue(metadata.keyType, key)]) const base64Key = Buffer.from(encodedKey).toString('base64') const value = await that.getBoxValue(Buffer.from(base64Key, 'base64')) - return getABIDecodedValue(value, metadata.valueType, that._appSpec.structs) + return decodeAVMOrABIValue(metadata.valueType, value) }, /** @@ -1624,7 +1619,7 @@ export class AppClient { * @param appState */ getMap: async (mapName: string) => { - const metadata = that._appSpec.state.maps.box[mapName] + const metadata = getBoxABIStorageMap(that._appSpec, mapName) const prefix = Buffer.from(metadata.prefix ?? '', 'base64') const boxNames = await that.getBoxNames() @@ -1634,8 +1629,8 @@ export class AppClient { .filter((b) => binaryStartsWith(b.nameRaw, prefix)) .map(async (b) => { return [ - getABIDecodedValue(b.nameRaw.slice(prefix.length), metadata.keyType, that._appSpec.structs), - getABIDecodedValue(await that.getBoxValue(b.nameRaw), metadata.valueType, that._appSpec.structs), + decodeAVMOrABIValue(metadata.keyType, b.nameRaw.slice(prefix.length)), + decodeAVMOrABIValue(metadata.valueType, await that.getBoxValue(b.nameRaw)), ] as const }), ), @@ -1648,14 +1643,12 @@ export class AppClient { private getStateMethods( stateGetter: () => Promise, keyGetter: () => { - [name: string]: StorageKey + [name: string]: ABIStorageKey }, mapGetter: () => { - [name: string]: StorageMap + [name: string]: ABIStorageMap }, ) { - // eslint-disable-next-line @typescript-eslint/no-this-alias - const that = this const stateMethods = { /** * Returns all single-key state values in a record keyed by the key name and the value a decoded ABI value. @@ -1681,7 +1674,7 @@ export class AppClient { const value = state.find((s) => s.keyBase64 === metadata.key) if (value && 'valueRaw' in value) { - return getABIDecodedValue(value.valueRaw, metadata.valueType, that._appSpec.structs) + return decodeAVMOrABIValue(metadata.valueType, value.valueRaw) } return value?.value @@ -1700,12 +1693,12 @@ export class AppClient { const metadata = mapGetter()[mapName] const prefix = Buffer.from(metadata.prefix ?? '', 'base64') - const encodedKey = Buffer.concat([prefix, getABIEncodedValue(key, metadata.keyType, that._appSpec.structs)]) + const encodedKey = Buffer.concat([prefix, encodeAVMOrABIValue(metadata.keyType, key)]) const base64Key = Buffer.from(encodedKey).toString('base64') const value = state.find((s) => s.keyBase64 === base64Key) if (value && 'valueRaw' in value) { - return getABIDecodedValue(value.valueRaw, metadata.valueType, that._appSpec.structs) + return decodeAVMOrABIValue(metadata.valueType, value.valueRaw) } return value?.value @@ -1729,8 +1722,8 @@ export class AppClient { .map((s) => { const key = s.keyRaw.slice(prefix.length) return [ - getABIDecodedValue(key, metadata.keyType, this._appSpec.structs), - getABIDecodedValue('valueRaw' in s ? s.valueRaw : s.value, metadata.valueType, this._appSpec.structs), + decodeAVMOrABIValue(metadata.keyType, key), + 'valueRaw' in s ? decodeAVMOrABIValue(metadata.valueType, s.valueRaw) : s.value, ] as const }), ) @@ -1750,7 +1743,7 @@ export class AppClient { export class ApplicationClient { private algod: AlgodClient private indexer?: algosdk.Indexer - private appSpec: AppSpec + private appSpec: Arc56Contract private sender: SendTransactionFrom | undefined private params: SuggestedParams | undefined private existingDeployments: LegacyAppLookup | undefined @@ -1777,8 +1770,9 @@ export class ApplicationClient { constructor(appDetails: AppSpecAppDetails, algod: AlgodClient) { const { app, sender, params, deployTimeParams, ...appIdentifier } = appDetails this.algod = algod - this.appSpec = typeof app == 'string' ? (JSON.parse(app) as AppSpec) : app - this._appName = appIdentifier.name ?? this.appSpec.contract.name + const appSpec = typeof app == 'string' ? (JSON.parse(app) as AppSpec) : app + this.appSpec = arc32ToArc56(appSpec) + this._appName = appIdentifier.name ?? this.appSpec.name this.deployTimeParams = deployTimeParams if (appIdentifier.resolveBy === 'id') { @@ -1815,7 +1809,8 @@ export class ApplicationClient { */ async compile(compilation?: AppClientCompilationParams) { const { deployTimeParams, updatable, deletable } = compilation ?? {} - const approvalTemplate = Buffer.from(this.appSpec.source.approval, 'base64').toString('utf-8') + // TODO: PD - confirm the ! here, ARC32 says the source is nullable but on main it isn't + const approvalTemplate = Buffer.from(this.appSpec.source!.approval, 'base64').toString('utf-8') const approval = replaceDeployTimeControlParams( performTemplateSubstitution(approvalTemplate, deployTimeParams ?? this.deployTimeParams), { @@ -1825,7 +1820,7 @@ export class ApplicationClient { ) const approvalCompiled = await compileTeal(approval, this.algod) this._approvalSourceMap = approvalCompiled?.sourceMap - const clearTemplate = Buffer.from(this.appSpec.source.clear, 'base64').toString('utf-8') + const clearTemplate = Buffer.from(this.appSpec.source!.clear, 'base64').toString('utf-8') const clear = performTemplateSubstitution(clearTemplate, deployTimeParams ?? this.deployTimeParams) const clearCompiled = await compileTeal(clear, this.algod) this._clearSourceMap = clearCompiled?.sourceMap @@ -1916,18 +1911,12 @@ export class ApplicationClient { ) } - const approval = Buffer.from(this.appSpec.source.approval, 'base64').toString('utf-8') + const approval = Buffer.from(this.appSpec.source!.approval, 'base64').toString('utf-8') const compilation = { deployTimeParams: deployArgs.deployTimeParams, - updatable: - allowUpdate !== undefined - ? allowUpdate - : getDeployTimeControl(approval, this.appSpec, UPDATABLE_TEMPLATE_NAME, 'update_application'), - deletable: - allowDelete !== undefined - ? allowDelete - : getDeployTimeControl(approval, this.appSpec, DELETABLE_TEMPLATE_NAME, 'delete_application'), + updatable: allowUpdate !== undefined ? allowUpdate : getDeployTimeControl(approval, this.appSpec, 'updatable'), + deletable: allowDelete !== undefined ? allowDelete : getDeployTimeControl(approval, this.appSpec, 'deletable'), } const { approvalCompiled, clearCompiled } = await this.compile(compilation) @@ -1946,10 +1935,10 @@ export class ApplicationClient { deletable: compilation.deletable, }, schema: { - globalByteSlices: this.appSpec.state.global.num_byte_slices, - globalInts: this.appSpec.state.global.num_uints, - localByteSlices: this.appSpec.state.local.num_byte_slices, - localInts: this.appSpec.state.local.num_uints, + globalByteSlices: this.appSpec.state.schema.global.bytes, + globalInts: this.appSpec.state.schema.global.ints, + localByteSlices: this.appSpec.state.schema.local.bytes, + localInts: this.appSpec.state.schema.local.ints, ...schema, }, transactionParams: this.params, @@ -2023,10 +2012,10 @@ export class ApplicationClient { approvalProgram: approvalCompiled.compiledBase64ToBytes, clearStateProgram: clearCompiled.compiledBase64ToBytes, schema: { - globalByteSlices: this.appSpec.state.global.num_byte_slices, - globalInts: this.appSpec.state.global.num_uints, - localByteSlices: this.appSpec.state.local.num_byte_slices, - localInts: this.appSpec.state.local.num_uints, + globalByteSlices: this.appSpec.state.schema.global.bytes, + globalInts: this.appSpec.state.schema.global.ints, + localByteSlices: this.appSpec.state.schema.local.bytes, + localInts: this.appSpec.state.schema.local.ints, ...schema, }, onCompleteAction, @@ -2106,7 +2095,7 @@ export class ApplicationClient { // There isn't a composer passed in !call.sendParams?.transactionComposer && // The method is readonly - this.appSpec.hints?.[this.getABIMethodSignature(this.getABIMethod(call.method)!)]?.read_only + findABIMethod(call.method, this.appSpec).readonly ) { const transactionComposer = new TransactionComposer({ algod: this.algod, @@ -2380,34 +2369,33 @@ export class ApplicationClient { } if (args.method) { - const abiMethod = this.getABIMethodParams(args.method) + const abiMethod = findABIMethod(args.method, this.appSpec) if (!abiMethod) { throw new Error(`Attempt to call ABI method ${args.method}, but it wasn't found`) } - const methodSignature = this.getABIMethodSignature(abiMethod) - return { ...args, method: abiMethod, methodArgs: await Promise.all( args.methodArgs.map(async (arg, index): Promise => { if (arg !== undefined) return arg - const argName = abiMethod.args[index].name - const defaultValueStrategy = argName && this.appSpec.hints?.[methodSignature]?.default_arguments?.[argName] + const abiMethodArg = abiMethod.args[index] + const argName = abiMethodArg + const defaultValueStrategy = abiMethodArg.defaultValue if (!defaultValueStrategy) throw new Error( `Argument at position ${index} with the name ${argName} is undefined and does not have a default value strategy`, ) switch (defaultValueStrategy.source) { - case 'constant': + case 'literal': return defaultValueStrategy.data - case 'abi-method': { - const method = defaultValueStrategy.data as ABIMethodParams + case 'method': { + const method = findABIMethod(defaultValueStrategy.data, this.appSpec) const result = await this.callOfType( { - method: this.getABIMethodSignature(method), + method: method.name, methodArgs: method.args.map(() => undefined), sender, }, @@ -2415,10 +2403,9 @@ export class ApplicationClient { ) return result.return?.returnValue } - case 'local-state': - case 'global-state': { - const state = - defaultValueStrategy.source === 'global-state' ? await this.getGlobalState() : await this.getLocalState(sender) + case 'local': + case 'global': { + const state = defaultValueStrategy.source === 'global' ? await this.getGlobalState() : await this.getLocalState(sender) const key = defaultValueStrategy.data if (key in state) { return state[key].value @@ -2437,29 +2424,30 @@ export class ApplicationClient { } } - /** - * @deprecated Use `appClient.getABIMethod` instead. - * - * Returns the ABI Method parameters for the given method name string for the app represented by this application client instance - * @param method Either the name of the method or the ABI method spec definition string - * @returns The ABI method params for the given method - */ - getABIMethodParams(method: string): ABIMethodParams | undefined { - if (!method.includes('(')) { - const methods = this.appSpec.contract.methods.filter((m) => m.name === method) - if (methods.length > 1) { - throw new Error( - `Received a call to method ${method} in contract ${ - this._appName - }, but this resolved to multiple methods; please pass in an ABI signature instead: ${methods - .map(this.getABIMethodSignature) - .join(', ')}`, - ) - } - return methods[0] - } - return this.appSpec.contract.methods.find((m) => this.getABIMethodSignature(m) === method) - } + // TODO: PD - what to do with this? + // /** + // * @deprecated Use `appClient.getABIMethod` instead. + // * + // * Returns the ABI Method parameters for the given method name string for the app represented by this application client instance + // * @param method Either the name of the method or the ABI method spec definition string + // * @returns The ABI method params for the given method + // */ + // getABIMethodParams(method: string): ABIMethodParams | undefined { + // if (!method.includes('(')) { + // const methods = this.appSpec.contract.methods.filter((m) => m.name === method) + // if (methods.length > 1) { + // throw new Error( + // `Received a call to method ${method} in contract ${ + // this._appName + // }, but this resolved to multiple methods; please pass in an ABI signature instead: ${methods + // .map(this.getABIMethodSignature) + // .join(', ')}`, + // ) + // } + // return methods[0] + // } + // return this.appSpec.contract.methods.find((m) => this.getABIMethodSignature(m) === method) + // } /** * Returns the ABI Method for the given method name string for the app represented by this application client instance @@ -2467,8 +2455,7 @@ export class ApplicationClient { * @returns The ABI method for the given method */ getABIMethod(method: string): ABIMethod | undefined { - const methodParams = this.getABIMethodParams(method) - return methodParams ? new ABIMethod(methodParams) : undefined + return findABIMethod(method, this.appSpec) } /** @@ -2516,15 +2503,11 @@ export class ApplicationClient { if (errorDetails !== undefined) return new LogicError( errorDetails, - Buffer.from(isClear ? this.appSpec.source.clear : this.appSpec.source.approval, 'base64') + Buffer.from(isClear ? this.appSpec.source!.clear : this.appSpec.source!.approval, 'base64') .toString() .split('\n'), (pc: number) => (isClear ? this._clearSourceMap : this._approvalSourceMap)?.getLocationForPc(pc)?.line, ) else return e } - - private getABIMethodSignature(method: ABIMethodParams | ABIMethod) { - return 'getSignature' in method ? method.getSignature() : new ABIMethod(method).getSignature() - } } From a248d40ab871cbadb324eb49d6b765f990df6f45 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 21 Nov 2025 14:43:29 +1000 Subject: [PATCH 09/43] fix import export --- packages/abi/src/index.ts | 25 ++++++++++++++++++++++++- src/types/app-client.spec.ts | 3 +-- src/types/app-client.ts | 18 +++++++----------- src/types/app-factory.ts | 3 +-- src/types/app-spec.ts | 12 ++++++++++-- 5 files changed, 43 insertions(+), 18 deletions(-) diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index 70864bf71..87558a429 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -1,7 +1,10 @@ export { + argTypeIsAbiType, argTypeIsReference, argTypeIsTransaction, + decodeAVMOrABIValue, decodeAVMValue, + encodeAVMOrABIValue, findABIMethod, getABIMethod, getABIMethodSelector, @@ -9,7 +12,16 @@ export { isAVMType, } from './abi-method' export type { ABIMethod, ABIReferenceType, ABIReturn } from './abi-method' -export { ABITypeName, decodeABIValue, encodeABIValue, encodeTuple, getABIType, getABITypeName, parseTupleContent } from './abi-type' +export { + ABITypeName, + decodeABIValue, + encodeABIValue, + encodeTuple, + getABIStructType, + getABIType, + getABITypeName, + parseTupleContent, +} from './abi-type' export type { ABIAddressType, ABIBoolType, @@ -24,7 +36,18 @@ export type { ABIUintType, } from './abi-type' export type { ABIReferenceValue, ABIValue } from './abi-value' +export type { ARC28Event } from './arc28-event' +export { + getBoxABIStorageKey, + getBoxABIStorageMap, + getGlobalABIStorageKeys, + getGlobalABIStorageMaps, + getLocalABIStorageKeys, + getLocalABIStorageMaps, +} from './arc56-contract' export type { + ABIStorageKey, + ABIStorageMap, AVMBytes, AVMString, AVMType, diff --git a/src/types/app-client.spec.ts b/src/types/app-client.spec.ts index 1019deba2..8a6cc26d4 100644 --- a/src/types/app-client.spec.ts +++ b/src/types/app-client.spec.ts @@ -1,5 +1,4 @@ -import { decodeABIValue, encodeABIValue, getABIMethod, getABIType } from '@algorandfoundation/algokit-abi' -import { getABIStructType } from '@algorandfoundation/algokit-abi/abi-type' +import { decodeABIValue, encodeABIValue, getABIMethod, getABIStructType, getABIType } from '@algorandfoundation/algokit-abi' import { AlgodClient } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' diff --git a/src/types/app-client.ts b/src/types/app-client.ts index 70df9a55a..b402572fe 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1,30 +1,26 @@ import { ABIMethod, + ABIStorageKey, + ABIStorageMap, ABIType, ABIValue, Arc56Contract, ProgramSourceInfo, - decodeABIValue, - decodeAVMValue, - findABIMethod, - isAVMType, -} from '@algorandfoundation/algokit-abi' -import { argTypeIsAbiType, argTypeIsTransaction, + decodeABIValue, decodeAVMOrABIValue, + decodeAVMValue, encodeAVMOrABIValue, -} from '@algorandfoundation/algokit-abi/abi-method' -import { - ABIStorageKey, - ABIStorageMap, + findABIMethod, getBoxABIStorageKey, getBoxABIStorageMap, getGlobalABIStorageKeys, getGlobalABIStorageMaps, getLocalABIStorageKeys, getLocalABIStorageMaps, -} from '@algorandfoundation/algokit-abi/arc56-contract' + isAVMType, +} from '@algorandfoundation/algokit-abi' import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index 6ff55b7cd..ea306977e 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -1,5 +1,4 @@ -import { Arc56Contract, decodeABIValue, findABIMethod, isAVMType } from '@algorandfoundation/algokit-abi' -import { argTypeIsAbiType, decodeAVMValue } from '@algorandfoundation/algokit-abi/abi-method' +import { Arc56Contract, argTypeIsAbiType, decodeABIValue, decodeAVMValue, findABIMethod, isAVMType } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import { Address, ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' import { TransactionSignerAccount } from './account' diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index 8f59a024d..b7e51c606 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -1,5 +1,13 @@ -import { ABIMethod, Arc56Contract, Arc56Method, StorageKey, StructField, encodeABIValue, getABIType } from '@algorandfoundation/algokit-abi' -import { ARC28Event } from '@algorandfoundation/algokit-abi/arc28-event' +import { + ABIMethod, + ARC28Event, + Arc56Contract, + Arc56Method, + StorageKey, + StructField, + encodeABIValue, + getABIType, +} from '@algorandfoundation/algokit-abi' /** * Converts an ARC-32 Application Specification to an ARC-56 Contract From 27f9e7bd3a62694189b7d0b14e36dc42a7426d80 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 21 Nov 2025 15:36:06 +1000 Subject: [PATCH 10/43] map default values --- packages/abi/src/abi-method.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index bdc93122f..8e1df37d7 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -199,12 +199,21 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB throw new Error('Invalid ABIMethod parameters') } - const args = method.args.map(({ type, name, desc, struct }) => { + const args = method.args.map(({ type, name, desc, struct, defaultValue }) => { + const convertedDefaultValue: ABIDefaultValue | undefined = defaultValue + ? { + data: defaultValue.data, + source: defaultValue.source as DefaultValueSource, + type: defaultValue.type ? (isAVMType(defaultValue.type) ? defaultValue.type : getABIType(defaultValue.type)) : undefined, + } + : undefined + if (argTypeIsTransaction(type as ABIMethodArgType) || argTypeIsReference(type as ABIMethodArgType)) { return { type: type as ABIMethodArgType, name, desciption: desc, + defaultValue: convertedDefaultValue, } satisfies ABIMethodArg } @@ -213,6 +222,7 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB type: getABIStructType(struct, appSpec.structs), name, desciption: desc, + defaultValue: convertedDefaultValue, } satisfies ABIMethodArg } @@ -220,6 +230,7 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB type: getABIType(type), name, desciption: desc, + defaultValue: convertedDefaultValue, } satisfies ABIMethodArg }) From f70e3f63dc2b7cae0c344ef022b2f01acd9bb8b7 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 21 Nov 2025 15:46:52 +1000 Subject: [PATCH 11/43] wip - fixing tests --- packages/abi/src/abi-type.ts | 4 ++-- src/transactions/method-call.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index ec3e0f91e..191df724d 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -528,7 +528,7 @@ function dynamicArrayToABITupleType(type: ABIDynamicArrayType, length: number) { } function dynamicArrayToString(type: ABIDynamicArrayType): string { - return `${type.childType}[]` + return `${getABITypeName(type.childType)}[]` } // Static Array @@ -559,7 +559,7 @@ function decodeStaticArray(type: ABIStaticArrayType, bytes: Uint8Array): ABIValu } function staticArrayToString(type: ABIStaticArrayType): string { - return `${type.childType}[${type.length}]` + return `${getABITypeName(type.childType)}[${type.length}]` } function staticArrayToABITupleType(type: ABIStaticArrayType) { diff --git a/src/transactions/method-call.ts b/src/transactions/method-call.ts index 50b03d3f4..a661494d4 100644 --- a/src/transactions/method-call.ts +++ b/src/transactions/method-call.ts @@ -549,7 +549,7 @@ export const buildAppUpdateMethodCall = async ( const accountReferences = params.accountReferences?.map((a) => a.toString()) const common = buildMethodCallCommon( { - appId: 0n, + appId: params.appId, method: params.method, args: params.args ?? [], accountReferences: accountReferences, @@ -593,7 +593,7 @@ export const buildAppCallMethodCall = async ( const accountReferences = params.accountReferences?.map((a) => a.toString()) const common = buildMethodCallCommon( { - appId: 0n, + appId: params.appId, method: params.method, args: params.args ?? [], accountReferences: accountReferences, From de65af3ad34f225734f621a7ae2a1fe697c49e32 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 21 Nov 2025 16:02:48 +1000 Subject: [PATCH 12/43] wip - fix tests --- packages/abi/src/abi-type.ts | 2 +- src/types/app-client.ts | 51 ++++++++++++++++++++++++++---------- 2 files changed, 38 insertions(+), 15 deletions(-) diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 191df724d..b5207f5f0 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -361,7 +361,7 @@ export type ABIStringType = { } function encodeString(value: ABIValue): Uint8Array { - if (typeof value !== 'string') { + if (typeof value !== 'string' && !(value instanceof Uint8Array)) { throw new Error(`Encoding Error: Cannot encode value as string: ${value}`) } diff --git a/src/types/app-client.ts b/src/types/app-client.ts index b402572fe..e49796b5d 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -8,9 +8,7 @@ import { ProgramSourceInfo, argTypeIsAbiType, argTypeIsTransaction, - decodeABIValue, decodeAVMOrABIValue, - decodeAVMValue, encodeAVMOrABIValue, findABIMethod, getBoxABIStorageKey, @@ -19,7 +17,6 @@ import { getGlobalABIStorageMaps, getLocalABIStorageKeys, getLocalABIStorageMaps, - isAVMType, } from '@algorandfoundation/algokit-abi' import { AlgodClient, SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' @@ -1108,7 +1105,7 @@ export class AppClient { case 'literal': { const bytes = Buffer.from(defaultValue.data, 'base64') const type = defaultValue.type ?? arg.type - return isAVMType(type) ? decodeAVMValue(type, bytes) : decodeABIValue(type, bytes) + return decodeAVMOrABIValue(type, bytes) } case 'method': { const method = this.getABIMethod(defaultValue.data) @@ -2375,18 +2372,29 @@ export class ApplicationClient { method: abiMethod, methodArgs: await Promise.all( args.methodArgs.map(async (arg, index): Promise => { - if (arg !== undefined) return arg + if (arg !== undefined) { + return arg + } const abiMethodArg = abiMethod.args[index] const argName = abiMethodArg const defaultValueStrategy = abiMethodArg.defaultValue - if (!defaultValueStrategy) + // TODO: PD - continue the fix from here + if (!defaultValueStrategy && argTypeIsAbiType(abiMethodArg.type)) { throw new Error( `Argument at position ${index} with the name ${argName} is undefined and does not have a default value strategy`, ) - + } switch (defaultValueStrategy.source) { - case 'literal': - return defaultValueStrategy.data + case 'literal': { + const bytes = Buffer.from(defaultValueStrategy.data, 'base64') + const type = defaultValueStrategy.type ?? (argTypeIsAbiType(abiMethodArg.type) ? abiMethodArg.type : undefined) + if (!type) { + throw new Error( + `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: No type information available for decoding`, + ) + } + return decodeAVMOrABIValue(type, bytes) + } case 'method': { const method = findABIMethod(defaultValueStrategy.data, this.appSpec) const result = await this.callOfType( @@ -2402,14 +2410,29 @@ export class ApplicationClient { case 'local': case 'global': { const state = defaultValueStrategy.source === 'global' ? await this.getGlobalState() : await this.getLocalState(sender) - const key = defaultValueStrategy.data - if (key in state) { - return state[key].value - } else { + const value = Object.values(state).find((s) => s.keyBase64 === defaultValueStrategy.data) + if (!value) { + throw new Error( + `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: The key '${defaultValueStrategy.data}' could not be found in ${defaultValueStrategy.source}`, + ) + } + const decodeType = defaultValueStrategy.type ?? (argTypeIsAbiType(abiMethodArg.type) ? abiMethodArg.type : undefined) + if (!decodeType) { + throw new Error( + `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: No type information available for decoding`, + ) + } + return 'valueRaw' in value ? decodeAVMOrABIValue(decodeType, value.valueRaw) : value.value + } + case 'box': { + const value = await this.getBoxValue(Buffer.from(defaultValueStrategy.data, 'base64')) + const decodeType = defaultValueStrategy.type ?? (argTypeIsAbiType(abiMethodArg.type) ? abiMethodArg.type : undefined) + if (!decodeType) { throw new Error( - `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: The key '${key}' could not be found in ${defaultValueStrategy.source}`, + `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: No type information available for decoding`, ) } + return decodeAVMOrABIValue(decodeType, value) } } }), From 0fe611327242e57bc2e95006fddccdec7c820e20 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 21 Nov 2025 21:17:28 +1000 Subject: [PATCH 13/43] clean up --- src/types/app-client.ts | 97 +++++++++++++++++++---------------------- 1 file changed, 45 insertions(+), 52 deletions(-) diff --git a/src/types/app-client.ts b/src/types/app-client.ts index e49796b5d..e75947ce0 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1099,7 +1099,8 @@ export class AppClient { return a } const defaultValue = arg.defaultValue - // TODO: PD - confirm if checking argTypeIsAbiType(arg.type) is correct + // TODO: PD - the existing logic seems to only handle default value for ABI types + // Confirm that we don't need to do it for reference types if (defaultValue && argTypeIsAbiType(arg.type)) { switch (defaultValue.source) { case 'literal': { @@ -2378,63 +2379,55 @@ export class ApplicationClient { const abiMethodArg = abiMethod.args[index] const argName = abiMethodArg const defaultValueStrategy = abiMethodArg.defaultValue - // TODO: PD - continue the fix from here - if (!defaultValueStrategy && argTypeIsAbiType(abiMethodArg.type)) { - throw new Error( - `Argument at position ${index} with the name ${argName} is undefined and does not have a default value strategy`, - ) - } - switch (defaultValueStrategy.source) { - case 'literal': { - const bytes = Buffer.from(defaultValueStrategy.data, 'base64') - const type = defaultValueStrategy.type ?? (argTypeIsAbiType(abiMethodArg.type) ? abiMethodArg.type : undefined) - if (!type) { - throw new Error( - `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: No type information available for decoding`, - ) + // TODO: PD - confirm that reference type doesn't have default value + if (defaultValueStrategy && argTypeIsAbiType(abiMethodArg.type)) { + switch (defaultValueStrategy.source) { + case 'literal': { + const bytes = Buffer.from(defaultValueStrategy.data, 'base64') + const type = defaultValueStrategy.type ?? abiMethodArg.type + return decodeAVMOrABIValue(type, bytes) } - return decodeAVMOrABIValue(type, bytes) - } - case 'method': { - const method = findABIMethod(defaultValueStrategy.data, this.appSpec) - const result = await this.callOfType( - { - method: method.name, - methodArgs: method.args.map(() => undefined), - sender, - }, - 'no_op', - ) - return result.return?.returnValue - } - case 'local': - case 'global': { - const state = defaultValueStrategy.source === 'global' ? await this.getGlobalState() : await this.getLocalState(sender) - const value = Object.values(state).find((s) => s.keyBase64 === defaultValueStrategy.data) - if (!value) { - throw new Error( - `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: The key '${defaultValueStrategy.data}' could not be found in ${defaultValueStrategy.source}`, + case 'method': { + const method = this.getABIMethod(defaultValueStrategy.data) + const result = await this.callOfType( + { + method: defaultValueStrategy.data, + methodArgs: method.args.map(() => undefined), + sender, + }, + 'no_op', ) + + if (result.return?.returnValue === undefined) { + throw new Error('Default value method call did not return a value') + } + // TODO: PD - confirm that we don't need to convert struct returned value to tuple anymore + return result.return?.returnValue } - const decodeType = defaultValueStrategy.type ?? (argTypeIsAbiType(abiMethodArg.type) ? abiMethodArg.type : undefined) - if (!decodeType) { - throw new Error( - `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: No type information available for decoding`, - ) + case 'local': + case 'global': { + const state = defaultValueStrategy.source === 'global' ? await this.getGlobalState() : await this.getLocalState(sender) + const value = Object.values(state).find((s) => s.keyBase64 === defaultValueStrategy.data) + if (!value) { + throw new Error( + `Preparing default value for argument ${abiMethodArg.name ?? `arg${index + 1}`} resulted in the failure: The key '${defaultValueStrategy.data}' could not be found in ${defaultValueStrategy.source} storage`, + ) + } + return 'valueRaw' in value + ? decodeAVMOrABIValue(defaultValueStrategy.type ?? abiMethodArg.type, value.valueRaw) + : value.value } - return 'valueRaw' in value ? decodeAVMOrABIValue(decodeType, value.valueRaw) : value.value - } - case 'box': { - const value = await this.getBoxValue(Buffer.from(defaultValueStrategy.data, 'base64')) - const decodeType = defaultValueStrategy.type ?? (argTypeIsAbiType(abiMethodArg.type) ? abiMethodArg.type : undefined) - if (!decodeType) { - throw new Error( - `Preparing default value for argument at position ${index} with the name ${argName} resulted in the failure: No type information available for decoding`, - ) + case 'box': { + const value = await this.getBoxValue(Buffer.from(defaultValueStrategy.data, 'base64')) + return decodeAVMOrABIValue(defaultValueStrategy.type ?? abiMethodArg.type, value) } - return decodeAVMOrABIValue(decodeType, value) } } + if (!argTypeIsTransaction(abiMethodArg.type)) { + throw new Error( + `Argument at position ${index} with the name ${argName} is undefined and does not have a default value strategy`, + ) + } }), ), } @@ -2473,7 +2466,7 @@ export class ApplicationClient { * @param method Either the name of the method or the ABI method spec definition string * @returns The ABI method for the given method */ - getABIMethod(method: string): ABIMethod | undefined { + getABIMethod(method: string): ABIMethod { return findABIMethod(method, this.appSpec) } From 89e18412af847b6f2c39aaaf6e57a58a0f76a6af Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Sat, 22 Nov 2025 21:15:03 +1000 Subject: [PATCH 14/43] fix result type --- src/types/app-client.ts | 17 +++++++++-------- src/types/app-factory.ts | 7 ++++--- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/types/app-client.ts b/src/types/app-client.ts index e75947ce0..207391f24 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -59,7 +59,6 @@ import { OnSchemaBreak, OnUpdate, RawAppCallArgs, - SendAppTransactionResult, TealTemplateParams, UPDATABLE_TEMPLATE_NAME, } from './app' @@ -1116,11 +1115,11 @@ export class AppClient { sender, }) - if (result.return?.returnValue === undefined) { + if (result.return === undefined) { throw new Error('Default value method call did not return a value') } // TODO: PD - confirm that we don't need to convert struct returned value to tuple anymore - return result.return?.returnValue + return result.return } case 'local': case 'global': { @@ -1391,9 +1390,8 @@ export class AppClient { ...result, transaction: result.transactions.at(-1)!, confirmation: result.confirmations.at(-1)!, - // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain - return: (result.returns?.length ?? 0 > 0) ? result.returns?.at(-1)! : undefined, - } satisfies SendAppTransactionResult + return: result.returns && result.returns.length > 0 ? result.returns.at(-1)!.returnValue : undefined, + } } catch (e) { const error = e as Error // For read-only calls with max opcode budget, fee issues should be rare @@ -1404,8 +1402,11 @@ export class AppClient { throw e } } - - return this._algorand.send.appCallMethodCall(await this.params.call(params)) + const result = await this._algorand.send.appCallMethodCall(await this.params.call(params)) + return { + ...result, + return: result.return?.returnValue, + } }, } } diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index ea306977e..f85a37941 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -394,13 +394,14 @@ export class AppFactory { 'return' in result ? result.operationPerformed === 'update' ? params.updateParams && 'method' in params.updateParams - ? result.return + ? result.return?.returnValue : undefined : params.createParams && 'method' in params.createParams - ? result.return + ? result.return?.returnValue : undefined : undefined, - deleteReturn: 'deleteReturn' in result && params.deleteParams && 'method' in params.deleteParams ? result.return : undefined, + deleteReturn: + 'deleteReturn' in result && params.deleteParams && 'method' in params.deleteParams ? result.deleteReturn?.returnValue : undefined, }, } } From b5b07e592621a775e3a42fa479c5bf2f7dca78f3 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Sat, 22 Nov 2025 21:20:01 +1000 Subject: [PATCH 15/43] wip - result value --- src/types/app-client.ts | 1 + src/types/app-factory.ts | 12 +++++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/types/app-client.ts b/src/types/app-client.ts index 207391f24..d3fd96042 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1319,6 +1319,7 @@ export class AppClient { * @returns The result of sending the update ABI method call */ update: async (params: AppClientMethodCallParams & AppClientCompilationParams & SendParams) => { + // TODO: PD - restore any places with processMethodCallReturn const compiled = await this.compile(params) const sendTransactionResult = this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) return { diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index f85a37941..807b4638d 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -297,9 +297,15 @@ export class AppFactory { const deletable = params?.deletable ?? this._deletable const deployTimeParams = params?.deployTimeParams ?? this._deployTimeParams const compiled = await this.compile({ deployTimeParams, updatable, deletable }) - const result = await this.handleCallErrors(async () => - this._algorand.send.appCreateMethodCall(await this.params.create({ ...params, updatable, deletable, deployTimeParams })), - ) + const result = await this.handleCallErrors(async () => { + const result = await this._algorand.send.appCreateMethodCall( + await this.params.create({ ...params, updatable, deletable, deployTimeParams }), + ) + return { + ...result, + return: result.return?.returnValue, + } + }) return { appClient: this.getAppClientById({ appId: result.appId, From dd2a26edcf31bf61172b4ea6702fd5f8f8ac8ba4 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Sat, 22 Nov 2025 21:29:23 +1000 Subject: [PATCH 16/43] fix processMethodCallReturn --- src/types/app-client.ts | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/types/app-client.ts b/src/types/app-client.ts index d3fd96042..02be3ee09 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1319,11 +1319,11 @@ export class AppClient { * @returns The result of sending the update ABI method call */ update: async (params: AppClientMethodCallParams & AppClientCompilationParams & SendParams) => { - // TODO: PD - restore any places with processMethodCallReturn const compiled = await this.compile(params) - const sendTransactionResult = this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) + const sendTransactionResult = await this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) return { ...sendTransactionResult, + return: sendTransactionResult.return?.returnValue, ...(compiled as Partial), } }, @@ -1333,7 +1333,11 @@ export class AppClient { * @returns The result of sending the opt-in ABI method call */ optIn: async (params: AppClientMethodCallParams & SendParams) => { - return this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) + const sendTransactionResult = await this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) + return { + ...sendTransactionResult, + return: sendTransactionResult.return?.returnValue, + } }, /** * Sign and send transactions for a delete ABI call @@ -1341,7 +1345,11 @@ export class AppClient { * @returns The result of sending the delete ABI method call */ delete: async (params: AppClientMethodCallParams & SendParams) => { - return this._algorand.send.appDeleteMethodCall(await this.params.delete(params)) + const sendTransactionResult = await this._algorand.send.appDeleteMethodCall(await this.params.delete(params)) + return { + ...sendTransactionResult, + return: sendTransactionResult.return?.returnValue, + } }, /** * Sign and send transactions for a close out ABI call @@ -1349,7 +1357,11 @@ export class AppClient { * @returns The result of sending the close out ABI method call */ closeOut: async (params: AppClientMethodCallParams & SendParams) => { - return this._algorand.send.appCallMethodCall(await this.params.closeOut(params)) + const sendTransactionResult = await this._algorand.send.appCallMethodCall(await this.params.closeOut(params)) + return { + ...sendTransactionResult, + return: sendTransactionResult.return?.returnValue, + } }, /** * Sign and send transactions for a call (defaults to no-op) From b2cb5c7adcd6694c7c23989e228cab711f66c499 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Sun, 23 Nov 2025 21:08:02 +1000 Subject: [PATCH 17/43] fix opt in --- src/types/app-client.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/types/app-client.ts b/src/types/app-client.ts index 02be3ee09..70dea4886 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1333,7 +1333,7 @@ export class AppClient { * @returns The result of sending the opt-in ABI method call */ optIn: async (params: AppClientMethodCallParams & SendParams) => { - const sendTransactionResult = await this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) + const sendTransactionResult = await this._algorand.send.appCallMethodCall(await this.params.optIn(params)) return { ...sendTransactionResult, return: sendTransactionResult.return?.returnValue, From c323f62b53e91ceaf3ccc8dd43e19a76386a87b6 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 24 Nov 2025 10:23:19 +1000 Subject: [PATCH 18/43] convert bytes array to uint8array --- packages/abi/src/abi-method.ts | 1 - packages/abi/src/abi-type.ts | 18 ++++++++++++++++-- src/types/app-factory.ts | 4 ++-- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 8e1df37d7..6fc6d4244 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -309,7 +309,6 @@ export function encodeAVMValue(avmType: AVMType, value: ABIValue): Uint8Array { } } -// TODO: PD - refactor external usage of this to decodeAVMOrABIValue export function isAVMType(type: unknown): type is AVMType { return typeof type === 'string' && (type === 'AVMString' || type === 'AVMBytes' || type === 'AVMUint64') } diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index b5207f5f0..9a851cbe4 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -517,7 +517,14 @@ function decodeDynamicArray(type: ABIDynamicArrayType, bytes: Uint8Array): ABIVa const view = new DataView(bytes.buffer, 0, LENGTH_ENCODE_BYTE_SIZE) const byteLength = view.getUint16(0) const convertedTuple = dynamicArrayToABITupleType(type, byteLength) - return decodeTuple(convertedTuple, bytes.slice(LENGTH_ENCODE_BYTE_SIZE, bytes.length)) + const decoded = decodeTuple(convertedTuple, bytes.slice(LENGTH_ENCODE_BYTE_SIZE, bytes.length)) + + // Convert byte arrays to Uint8Array + if (type.childType.name === ABITypeName.Byte && Array.isArray(decoded)) { + return new Uint8Array(decoded as number[]) + } + + return decoded } function dynamicArrayToABITupleType(type: ABIDynamicArrayType, length: number) { @@ -555,7 +562,14 @@ function encodeStaticArray(type: ABIStaticArrayType, value: ABIValue): Uint8Arra function decodeStaticArray(type: ABIStaticArrayType, bytes: Uint8Array): ABIValue { const convertedTuple = staticArrayToABITupleType(type) - return decodeTuple(convertedTuple, bytes) + const decoded = decodeTuple(convertedTuple, bytes) + + // Convert byte arrays to Uint8Array + if (type.childType.name === ABITypeName.Byte && Array.isArray(decoded)) { + return new Uint8Array(decoded as number[]) + } + + return decoded } function staticArrayToString(type: ABIStaticArrayType): string { diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index 807b4638d..9637a8623 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -1,4 +1,4 @@ -import { Arc56Contract, argTypeIsAbiType, decodeABIValue, decodeAVMValue, findABIMethod, isAVMType } from '@algorandfoundation/algokit-abi' +import { Arc56Contract, argTypeIsAbiType, decodeAVMOrABIValue, findABIMethod } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete } from '@algorandfoundation/algokit-transact' import { Address, ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' import { TransactionSignerAccount } from './account' @@ -661,7 +661,7 @@ export class AppFactory { case 'literal': { const bytes = Buffer.from(defaultValue.data, 'base64') const type = defaultValue.type ?? arg.type - return isAVMType(type) ? decodeAVMValue(type, bytes) : decodeABIValue(type, bytes) + return decodeAVMOrABIValue(type, bytes) } default: throw new Error(`Can't provide default value for ${defaultValue.source} for a contract creation call`) From fafbb12b704f23e22b90f454b135cd5437fda182 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 24 Nov 2025 10:54:48 +1000 Subject: [PATCH 19/43] fix struct names --- packages/abi/src/abi-type.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 9a851cbe4..95f916eb5 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -667,7 +667,9 @@ function getABITupleTypeFromABIStructType(struct: ABIStructType): ABITupleType { } function structToString(type: ABIStructType): string { - return type.structName + // TODO: PD - confirm with Dan about this + const tupleType = getABITupleTypeFromABIStructType(type) + return tupleToString(tupleType) } function getTupleValueFromStructValue(structType: ABIStructType, structValue: ABIStructValue): ABIValue[] { From e3239a520edd65cf5c86cb30cb8b123986afe959 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 24 Nov 2025 11:01:51 +1000 Subject: [PATCH 20/43] move byte arrays tests --- packages/abi/src/abi-type.spec.ts | 170 ++++++++++++++++++++++++++++++ src/util.spec.ts | 168 ----------------------------- 2 files changed, 170 insertions(+), 168 deletions(-) delete mode 100644 src/util.spec.ts diff --git a/packages/abi/src/abi-type.spec.ts b/packages/abi/src/abi-type.spec.ts index d6158f3d0..7c2b1fb83 100644 --- a/packages/abi/src/abi-type.spec.ts +++ b/packages/abi/src/abi-type.spec.ts @@ -450,6 +450,176 @@ describe('ABIType encode decode', () => { expect(typeof decoded.name).toBe('string') expect(decoded.name).toBe('world') }) + + describe('Basic byte arrays', () => { + test('should convert a simple byte array to Uint8Array', () => { + // Create a static array of bytes: byte[4] + const arrayType = getABIType('byte[4]') + + const value = [1, 2, 3, 4] + const encoded = encodeABIValue(arrayType, value) + const result = decodeABIValue(arrayType, encoded) + + expect(result).toBeInstanceOf(Uint8Array) + expect(Array.from(result as Uint8Array)).toEqual([1, 2, 3, 4]) + }) + + test('should handle dynamic byte arrays', () => { + // Create a dynamic array of bytes: byte[] + const arrayType = getABIType('byte[]') + + const value = [10, 20, 30, 40, 50] + const encoded = encodeABIValue(arrayType, value) + const result = decodeABIValue(arrayType, encoded) + + expect(result).toBeInstanceOf(Uint8Array) + expect(Array.from(result as Uint8Array)).toEqual([10, 20, 30, 40, 50]) + }) + + test('should return existing Uint8Array as is', () => { + const arrayType = getABIType('byte[3]') + + const value = new Uint8Array([5, 6, 7]) + const encoded = encodeABIValue(arrayType, value) + const result = decodeABIValue(arrayType, encoded) + + expect(result).toEqual(value) + }) + }) + + describe('Nested arrays', () => { + test('should convert byte arrays inside arrays', () => { + // Create byte[2][] + const outerArrayType = getABIType('byte[2][]') + + const value = [ + [1, 2], + [3, 4], + [5, 6], + ] + const encoded = encodeABIValue(outerArrayType, value) + const result = decodeABIValue(outerArrayType, encoded) as ABIValue[] + + expect(Array.isArray(result)).toBe(true) + expect(result.length).toBe(3) + + result.forEach((item) => { + expect(item).toBeInstanceOf(Uint8Array) + }) + + expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) + expect(Array.from(result[1] as Uint8Array)).toEqual([3, 4]) + expect(Array.from(result[2] as Uint8Array)).toEqual([5, 6]) + }) + + test('should not convert non-byte arrays', () => { + // Create uint8[3] + const arrayType = getABIType('uint8[3]') + + const value = [1, 2, 3] + const encoded = encodeABIValue(arrayType, value) + const result = decodeABIValue(arrayType, encoded) + + expect(Array.isArray(result)).toBe(true) + expect(result).toEqual([1, 2, 3]) + }) + }) + + describe('Tuple tests', () => { + test('should handle tuples with byte arrays', () => { + // Create (byte[2],bool,byte[3]) + const tupleType = getABIType('(byte[2],bool,byte[3])') + + const value = [[1, 2], true, [3, 4, 5]] + const encoded = encodeABIValue(tupleType, value) + const result = decodeABIValue(tupleType, encoded) as ABIValue[] + + expect(Array.isArray(result)).toBe(true) + expect(result.length).toBe(3) + + expect(result[0]).toBeInstanceOf(Uint8Array) + expect(result[1]).toBe(true) + expect(result[2]).toBeInstanceOf(Uint8Array) + + expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) + expect(Array.from(result[2] as Uint8Array)).toEqual([3, 4, 5]) + }) + + test('should handle nested tuples with byte arrays', () => { + // Create (byte[2],(byte[1],bool)) + const outerTupleType = getABIType('(byte[2],(byte[1],bool))') + + const value = [ + [1, 2], + [[3], true], + ] + const encoded = encodeABIValue(outerTupleType, value) + const result = decodeABIValue(outerTupleType, encoded) as ABIValue[] + + expect(Array.isArray(result)).toBe(true) + expect(result.length).toBe(2) + + expect(result[0]).toBeInstanceOf(Uint8Array) + expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) + + const nestedTuple = result[1] as ABIValue[] + expect(Array.isArray(nestedTuple)).toBe(true) + expect(nestedTuple.length).toBe(2) + expect(nestedTuple[0]).toBeInstanceOf(Uint8Array) + expect(Array.from(nestedTuple[0] as Uint8Array)).toEqual([3]) + expect(nestedTuple[1]).toBe(true) + }) + }) + + describe('Complex mixed structures', () => { + test('should handle complex nested structures', () => { + // Create (byte[2][],uint8,(bool,byte[3])) + const outerTupleType = getABIType('(byte[2][],uint8,(bool,byte[3]))') + + const value = [ + [ + [1, 2], + [3, 4], + [5, 6], + ], // byte[2][] + 123, // uint8 + [true, [7, 8, 9]], // (bool,byte[3]) + ] + + const encoded = encodeABIValue(outerTupleType, value) + const result = decodeABIValue(outerTupleType, encoded) as ABIValue[] + + // Check first element (byte[2][]) + const byteArrays = result[0] as ABIValue[] + expect(Array.isArray(byteArrays)).toBe(true) + expect(byteArrays.length).toBe(3) + byteArrays.forEach((item) => { + expect(item).toBeInstanceOf(Uint8Array) + }) + + // Check second element (uint8) + expect(result[1]).toBe(123) + + // Check third element (bool,byte[3]) + const tuple = result[2] as ABIValue[] + expect(tuple[0]).toBe(true) + expect(tuple[1]).toBeInstanceOf(Uint8Array) + expect(Array.from(tuple[1] as Uint8Array)).toEqual([7, 8, 9]) + }) + }) + + describe('Edge cases', () => { + test('should handle empty byte arrays', () => { + const arrayType = getABIType('byte[0]') + + const value: number[] = [] + const encoded = encodeABIValue(arrayType, value) + const result = decodeABIValue(arrayType, encoded) + + expect(result).toBeInstanceOf(Uint8Array) + expect((result as Uint8Array).length).toBe(0) + }) + }) }) // TODO: add failed tests diff --git a/src/util.spec.ts b/src/util.spec.ts deleted file mode 100644 index 17ac9761c..000000000 --- a/src/util.spec.ts +++ /dev/null @@ -1,168 +0,0 @@ -// TODO: PD - check this tests -// import { convertAbiByteArrays as convertAbiByteArrays } from './util' - -// import { describe, it, expect } from 'vitest' -// import { ABIValue, getABIType, ABITypeName } from '@algorandfoundation/sdk' // Adjust this import path - -// describe('convertAbiByteArrays', () => { -// describe('Basic byte arrays', () => { -// it('should convert a simple byte array to Uint8Array', () => { -// // Create a static array of bytes: byte[4] -// const arrayType = getABIType('byte[4]') - -// const value = [1, 2, 3, 4] -// const result = convertAbiByteArrays(value, arrayType) - -// expect(result).toBeInstanceOf(Uint8Array) -// expect(Array.from(result as Uint8Array)).toEqual([1, 2, 3, 4]) -// }) - -// it('should handle dynamic byte arrays', () => { -// // Create a dynamic array of bytes: byte[] -// const arrayType = getABIType('byte[]') - -// const value = [10, 20, 30, 40, 50] -// const result = convertAbiByteArrays(value, arrayType) - -// expect(result).toBeInstanceOf(Uint8Array) -// expect(Array.from(result as Uint8Array)).toEqual([10, 20, 30, 40, 50]) -// }) - -// it('should return existing Uint8Array as is', () => { -// const arrayType = getABIType('byte[3]') - -// const value = new Uint8Array([5, 6, 7]) -// const result = convertAbiByteArrays(value, arrayType) - -// expect(result).toBe(value) // Should be the same instance -// }) -// }) - -// describe('Nested arrays', () => { -// it('should convert byte arrays inside arrays', () => { -// // Create byte[2][] -// const outerArrayType = getABIType('byte[2][]') - -// const value = [ -// [1, 2], -// [3, 4], -// [5, 6], -// ] -// const result = convertAbiByteArrays(value, outerArrayType) as ABIValue[] - -// expect(Array.isArray(result)).toBe(true) -// expect(result.length).toBe(3) - -// result.forEach((item) => { -// expect(item).toBeInstanceOf(Uint8Array) -// }) - -// expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) -// expect(Array.from(result[1] as Uint8Array)).toEqual([3, 4]) -// expect(Array.from(result[2] as Uint8Array)).toEqual([5, 6]) -// }) - -// it('should not convert non-byte arrays', () => { -// // Create uint8[3] -// const arrayType = getABIType('uint8[3]') - -// const value = [1, 2, 3] -// const result = convertAbiByteArrays(value, arrayType) - -// expect(Array.isArray(result)).toBe(true) -// expect(result).toEqual([1, 2, 3]) -// }) -// }) - -// describe('Tuple tests', () => { -// it('should handle tuples with byte arrays', () => { -// // Create (byte[2],bool,byte[3]) -// const tupleType = getABIType('(byte[2],bool,byte[3])') - -// const value = [[1, 2], true, [3, 4, 5]] -// const result = convertAbiByteArrays(value, tupleType) as ABIValue[] - -// expect(Array.isArray(result)).toBe(true) -// expect(result.length).toBe(3) - -// expect(result[0]).toBeInstanceOf(Uint8Array) -// expect(result[1]).toBe(true) -// expect(result[2]).toBeInstanceOf(Uint8Array) - -// expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) -// expect(Array.from(result[2] as Uint8Array)).toEqual([3, 4, 5]) -// }) - -// it('should handle nested tuples with byte arrays', () => { -// // Create (byte[2],(byte[1],bool)) -// const outerTupleType = getABIType('(byte[2],(byte[1],bool))') - -// const value = [ -// [1, 2], -// [[3], true], -// ] -// const result = convertAbiByteArrays(value, outerTupleType) as ABIValue[] - -// expect(Array.isArray(result)).toBe(true) -// expect(result.length).toBe(2) - -// expect(result[0]).toBeInstanceOf(Uint8Array) -// expect(Array.from(result[0] as Uint8Array)).toEqual([1, 2]) - -// const nestedTuple = result[1] as ABIValue[] -// expect(Array.isArray(nestedTuple)).toBe(true) -// expect(nestedTuple.length).toBe(2) -// expect(nestedTuple[0]).toBeInstanceOf(Uint8Array) -// expect(Array.from(nestedTuple[0] as Uint8Array)).toEqual([3]) -// expect(nestedTuple[1]).toBe(true) -// }) -// }) - -// describe('Complex mixed structures', () => { -// it('should handle complex nested structures', () => { -// // Create (byte[2][],uint8,(bool,byte[3])) -// const outerTupleType = getABIType('(byte[2][],uint8,(bool,byte[3]))') - -// const value = [ -// [ -// [1, 2], -// [3, 4], -// [5, 6], -// ], // byte[2][] -// 123, // uint8 -// [true, [7, 8, 9]], // (bool,byte[3]) -// ] - -// const result = convertAbiByteArrays(value, outerTupleType) as ABIValue[] - -// // Check first element (byte[2][]) -// const byteArrays = result[0] as ABIValue[] -// expect(Array.isArray(byteArrays)).toBe(true) -// expect(byteArrays.length).toBe(3) -// byteArrays.forEach((item) => { -// expect(item).toBeInstanceOf(Uint8Array) -// }) - -// // Check second element (uint8) -// expect(result[1]).toBe(123) - -// // Check third element (bool,byte[3]) -// const tuple = result[2] as ABIValue[] -// expect(tuple[0]).toBe(true) -// expect(tuple[1]).toBeInstanceOf(Uint8Array) -// expect(Array.from(tuple[1] as Uint8Array)).toEqual([7, 8, 9]) -// }) -// }) - -// describe('Edge cases', () => { -// it('should handle empty byte arrays', () => { -// const arrayType = getABIType('byte[0]') - -// const value: number[] = [] -// const result = convertAbiByteArrays(value, arrayType) - -// expect(result).toBeInstanceOf(Uint8Array) -// expect((result as Uint8Array).length).toBe(0) -// }) -// }) -// }) From 2e43b027122799e05102654bfd3c1fb4882e0d00 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Wed, 26 Nov 2025 14:39:44 +1000 Subject: [PATCH 21/43] fix tests --- src/types/algorand-client.spec.ts | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/types/algorand-client.spec.ts b/src/types/algorand-client.spec.ts index 76ba60766..7ca66cc5b 100644 --- a/src/types/algorand-client.spec.ts +++ b/src/types/algorand-client.spec.ts @@ -6,7 +6,6 @@ import { APP_SPEC, TestContractClient, TestContractFactory } from '../../tests/e import { algorandFixture } from '../testing' import { AlgorandClient } from './algorand-client' import { AlgoAmount } from './amount' -import { arc32ToArc56 } from './app-spec' import { AppCallMethodCall } from './composer' async function compileProgram(algorand: AlgorandClient, b64Teal: string) { @@ -150,7 +149,7 @@ describe('AlgorandClient', () => { }) .send() - expect(txnRes.returns?.[0].returnValue?.valueOf()).toBe(alice.toString()) + expect(txnRes.returns?.[0].returnValue?.toString()).toBe(alice.toString()) }) test('method with method call arg', async () => { @@ -193,7 +192,7 @@ describe('AlgorandClient', () => { }) .send() - expect(nestedTxnArgRes.returns?.[0].returnValue?.valueOf()).toBe(alice.addr.toString()) + expect(nestedTxnArgRes.returns?.[0].returnValue?.toString()).toBe(alice.addr.toString()) expect(nestedTxnArgRes.returns?.[1].returnValue?.valueOf()).toBe(BigInt(appId)) }) @@ -225,7 +224,7 @@ describe('AlgorandClient', () => { }) .send() - expect(nestedTxnArgRes.returns?.[0].returnValue?.valueOf()).toBe(alice.toString()) + expect(nestedTxnArgRes.returns?.[0].returnValue?.toString()).toBe(alice.toString()) expect(nestedTxnArgRes.returns?.[1].returnValue?.valueOf()).toBe(BigInt(appId)) expect(nestedTxnArgRes.returns?.[2].returnValue?.valueOf()).toBe(BigInt(appId)) }) @@ -256,8 +255,8 @@ describe('AlgorandClient', () => { }) .send() - expect(doubleNestedTxnArgRes.returns?.[0].returnValue?.valueOf()).toBe(alice.toString()) - expect(doubleNestedTxnArgRes.returns?.[1].returnValue?.valueOf()).toBe(alice.toString()) + expect(doubleNestedTxnArgRes.returns?.[0].returnValue?.toString()).toBe(alice.toString()) + expect(doubleNestedTxnArgRes.returns?.[1].returnValue?.toString()).toBe(alice.toString()) expect(doubleNestedTxnArgRes.returns?.[2].returnValue?.valueOf()).toBe(BigInt(appId)) }) @@ -273,13 +272,11 @@ describe('AlgorandClient', () => { }) test('methodCall create', async () => { - const arc56Contract = arc32ToArc56(APP_SPEC) - await algorand.send.appCreateMethodCall({ sender: alice, - method: findABIMethod('createApplication', arc56Contract), - approvalProgram: await compileProgram(algorand, APP_SPEC.source.approval), - clearStateProgram: await compileProgram(algorand, APP_SPEC.source.clear), + method: findABIMethod('createApplication', APP_SPEC), + approvalProgram: await compileProgram(algorand, APP_SPEC.source!.approval), + clearStateProgram: await compileProgram(algorand, APP_SPEC.source!.clear), }) }) From cf0b74c8eb1245d7dfdeb6f029ea5e232f2011b1 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Wed, 26 Nov 2025 15:35:17 +1000 Subject: [PATCH 22/43] convert ABIType to class --- packages/abi/src/abi-method.ts | 30 +- packages/abi/src/abi-type.spec.ts | 297 ++--- packages/abi/src/abi-type.ts | 1455 ++++++++++++---------- packages/abi/src/arc56-contract.ts | 6 +- packages/abi/src/index.ts | 13 +- src/transaction/transaction.spec.ts | 8 +- src/transactions/method-call.ts | 12 +- src/types/app-client.spec.ts | 25 +- src/types/app-factory-and-client.spec.ts | 8 +- src/types/app-manager.ts | 6 +- src/types/app-spec.ts | 5 +- 11 files changed, 944 insertions(+), 921 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 6fc6d4244..6d6bf7781 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -1,5 +1,5 @@ import sha512 from 'js-sha512' -import { ABIType, decodeABIValue, encodeABIValue, getABIStructType, getABIType, getABITypeName, parseTupleContent } from './abi-type' +import { ABIStructType, ABIType, parseTupleContent } from './abi-type' import { ABIValue } from './abi-value' import { ARC28Event } from './arc28-event' import { AVMType, Arc56Contract, Arc56Method } from './arc56-contract' @@ -156,10 +156,10 @@ export function getABIMethod(signature: string): ABIMethod { if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) { return { type: n as ABIMethodArgType } satisfies ABIMethodArg } - return { type: getABIType(n) } satisfies ABIMethodArg + return { type: ABIType.from(n) } satisfies ABIMethodArg }) const returnType = signature.slice(argsEnd + 1) - const returns = { type: returnType === 'void' ? ('void' as const) : getABIType(returnType) } satisfies ABIMethodReturn + const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn return { name, @@ -177,10 +177,10 @@ export function getABIMethodSignature(abiMethod: ABIMethod): string { const args = abiMethod.args .map((arg) => { if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type - return getABITypeName(arg.type) + return arg.type.toString() }) .join(',') - const returns = abiMethod.returns.type === 'void' ? 'void' : getABITypeName(abiMethod.returns.type) + const returns = abiMethod.returns.type === 'void' ? 'void' : abiMethod.returns.type.toString() return `${abiMethod.name}(${args})${returns}` } @@ -204,7 +204,7 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB ? { data: defaultValue.data, source: defaultValue.source as DefaultValueSource, - type: defaultValue.type ? (isAVMType(defaultValue.type) ? defaultValue.type : getABIType(defaultValue.type)) : undefined, + type: defaultValue.type ? (isAVMType(defaultValue.type) ? defaultValue.type : ABIType.from(defaultValue.type)) : undefined, } : undefined @@ -219,7 +219,7 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB if (struct) { return { - type: getABIStructType(struct, appSpec.structs), + type: ABIStructType.fromStruct(struct, appSpec.structs), name, desciption: desc, defaultValue: convertedDefaultValue, @@ -227,7 +227,7 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB } return { - type: getABIType(type), + type: ABIType.from(type), name, desciption: desc, defaultValue: convertedDefaultValue, @@ -239,8 +239,8 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB method.returns.type === ('void' as const) ? ('void' as const) : method.returns.struct - ? getABIStructType(method.returns.struct, appSpec.structs) - : getABIType(method.returns.type), + ? ABIStructType.fromStruct(method.returns.struct, appSpec.structs) + : ABIType.from(method.returns.type), desc: method.returns.desc, } @@ -291,21 +291,21 @@ export function decodeAVMValue(avmType: AVMType, bytes: Uint8Array): ABIValue { case 'AVMBytes': return bytes case 'AVMUint64': - return decodeABIValue(getABIType('uint64'), bytes) + return ABIType.from('uint64').decode(bytes) } } export function encodeAVMValue(avmType: AVMType, value: ABIValue): Uint8Array { switch (avmType) { case 'AVMString': - return encodeABIValue(getABIType('string'), value) + return ABIType.from('string').encode(value) case 'AVMBytes': if (typeof value === 'string') return Buffer.from(value, 'utf-8') if (typeof value !== 'object' || !(value instanceof Uint8Array)) throw new Error(`Expected bytes value for AVMBytes, but got ${value}`) return value case 'AVMUint64': - return encodeABIValue(getABIType('uint64'), value) + return ABIType.from('uint64').encode(value) } } @@ -314,9 +314,9 @@ export function isAVMType(type: unknown): type is AVMType { } export function decodeAVMOrABIValue(type: AVMType | ABIType, bytes: Uint8Array): ABIValue { - return isAVMType(type) ? decodeAVMValue(type, bytes) : decodeABIValue(type, bytes) + return isAVMType(type) ? decodeAVMValue(type, bytes) : type.decode(bytes) } export function encodeAVMOrABIValue(type: AVMType | ABIType, value: ABIValue): Uint8Array { - return isAVMType(type) ? encodeAVMValue(type, value) : encodeABIValue(type, value) + return isAVMType(type) ? encodeAVMValue(type, value) : type.encode(value) } diff --git a/packages/abi/src/abi-type.spec.ts b/packages/abi/src/abi-type.spec.ts index 38367c388..d1163d297 100644 --- a/packages/abi/src/abi-type.spec.ts +++ b/packages/abi/src/abi-type.spec.ts @@ -1,27 +1,38 @@ +import { Address } from '@algorandfoundation/algokit-common' import { describe, expect, test } from 'vitest' -import type { ABIStructType } from './abi-type' -import { ABIType, ABITypeName, decodeABIValue, encodeABIValue, getABIType } from './abi-type' +import { + ABIAddressType, + ABIBoolType, + ABIByteType, + ABIDynamicArrayType, + ABIStaticArrayType, + ABIStringType, + ABIStructType, + ABITupleType, + ABIType, + ABIUfixedType, + ABIUintType, +} from './abi-type' import { ABIStructValue, ABIValue } from './abi-value' -import { Address } from '@algorandfoundation/algokit-common' describe('ABIType encode decode', () => { const basicTypeCases = [ // Uint tests { description: 'uint8 with value 0', - abiType: { name: ABITypeName.Uint, bitSize: 8 } as ABIType, + abiType: new ABIUintType(8), abiValue: 0, expectedBytes: [0], }, { description: 'uint16 with value 3', - abiType: { name: ABITypeName.Uint, bitSize: 16 } as ABIType, + abiType: new ABIUintType(16), abiValue: 3, expectedBytes: [0, 3], }, { description: 'uint64 with value 256', - abiType: { name: ABITypeName.Uint, bitSize: 64 } as ABIType, + abiType: new ABIUintType(64), abiValue: 256n, expectedBytes: [0, 0, 0, 0, 0, 0, 1, 0], }, @@ -29,13 +40,13 @@ describe('ABIType encode decode', () => { // Ufixed tests { description: 'ufixed8x30 with value 255', - abiType: { name: ABITypeName.Ufixed, bitSize: 8, precision: 30 } as ABIType, + abiType: new ABIUfixedType(8, 30), abiValue: 255, expectedBytes: [255], }, { description: 'ufixed32x10 with value 33', - abiType: { name: ABITypeName.Ufixed, bitSize: 32, precision: 10 } as ABIType, + abiType: new ABIUfixedType(32, 10), abiValue: 33, expectedBytes: [0, 0, 0, 33], }, @@ -43,7 +54,7 @@ describe('ABIType encode decode', () => { // Address tests { description: 'address', - abiType: { name: ABITypeName.Address } as ABIType, + abiType: new ABIAddressType(), abiValue: Address.fromString('MO2H6ZU47Q36GJ6GVHUKGEBEQINN7ZWVACMWZQGIYUOE3RBSRVYHV4ACJI'), expectedBytes: [ 99, 180, 127, 102, 156, 252, 55, 227, 39, 198, 169, 232, 163, 16, 36, 130, 26, 223, 230, 213, 0, 153, 108, 192, 200, 197, 28, 77, @@ -54,19 +65,19 @@ describe('ABIType encode decode', () => { // String tests { description: 'string with unicode', - abiType: { name: ABITypeName.String } as ABIType, + abiType: new ABIStringType(), abiValue: 'What’s new', expectedBytes: [0, 12, 87, 104, 97, 116, 226, 128, 153, 115, 32, 110, 101, 119], }, { description: 'string with emoji', - abiType: { name: ABITypeName.String } as ABIType, + abiType: new ABIStringType(), abiValue: '😅🔨', expectedBytes: [0, 8, 240, 159, 152, 133, 240, 159, 148, 168], }, { description: 'simple string', - abiType: { name: ABITypeName.String } as ABIType, + abiType: new ABIStringType(), abiValue: 'asdf', expectedBytes: [0, 4, 97, 115, 100, 102], }, @@ -74,13 +85,13 @@ describe('ABIType encode decode', () => { // Byte tests { description: 'byte with value 10', - abiType: { name: ABITypeName.Byte } as ABIType, + abiType: new ABIByteType(), abiValue: 10, expectedBytes: [10], }, { description: 'byte with value 255', - abiType: { name: ABITypeName.Byte } as ABIType, + abiType: new ABIByteType(), abiValue: 255, expectedBytes: [255], }, @@ -88,13 +99,13 @@ describe('ABIType encode decode', () => { // Bool tests { description: 'bool true', - abiType: { name: ABITypeName.Bool } as ABIType, + abiType: new ABIBoolType(), abiValue: true, expectedBytes: [128], }, { description: 'bool false', - abiType: { name: ABITypeName.Bool } as ABIType, + abiType: new ABIBoolType(), abiValue: false, expectedBytes: [0], }, @@ -102,31 +113,31 @@ describe('ABIType encode decode', () => { // Static array tests { description: 'bool[3] array', - abiType: { name: ABITypeName.StaticArray, childType: { name: ABITypeName.Bool }, length: 3 } as ABIType, + abiType: new ABIStaticArrayType(new ABIBoolType(), 3), abiValue: [true, true, false], expectedBytes: [192], }, { description: 'bool[8] array with 01000000', - abiType: { name: ABITypeName.StaticArray, childType: { name: ABITypeName.Bool }, length: 8 } as ABIType, + abiType: new ABIStaticArrayType(new ABIBoolType(), 8), abiValue: [false, true, false, false, false, false, false, false], expectedBytes: [64], }, { description: 'bool[8] array with all true', - abiType: { name: ABITypeName.StaticArray, childType: { name: ABITypeName.Bool }, length: 8 } as ABIType, + abiType: new ABIStaticArrayType(new ABIBoolType(), 8), abiValue: [true, true, true, true, true, true, true, true], expectedBytes: [255], }, { description: 'bool[9] array', - abiType: { name: ABITypeName.StaticArray, childType: { name: ABITypeName.Bool }, length: 9 } as ABIType, + abiType: new ABIStaticArrayType(new ABIBoolType(), 9), abiValue: [true, false, false, true, false, false, true, false, true], expectedBytes: [146, 128], }, { description: 'uint64[3] array', - abiType: { name: ABITypeName.StaticArray, childType: { name: ABITypeName.Uint, bitSize: 64 }, length: 3 } as ABIType, + abiType: new ABIStaticArrayType(new ABIUintType(64), 3), abiValue: [1n, 2n, 3n], expectedBytes: [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3], }, @@ -134,25 +145,25 @@ describe('ABIType encode decode', () => { // Dynamic array tests { description: 'empty bool[] array', - abiType: { name: ABITypeName.DynamicArray, childType: { name: ABITypeName.Bool } } as ABIType, + abiType: new ABIDynamicArrayType(new ABIBoolType()), abiValue: [], expectedBytes: [0, 0], }, { description: 'bool[] array with 3 elements', - abiType: { name: ABITypeName.DynamicArray, childType: { name: ABITypeName.Bool } } as ABIType, + abiType: new ABIDynamicArrayType(new ABIBoolType()), abiValue: [true, true, false], expectedBytes: [0, 3, 192], }, { description: 'bool[] array with 8 elements', - abiType: { name: ABITypeName.DynamicArray, childType: { name: ABITypeName.Bool } } as ABIType, + abiType: new ABIDynamicArrayType(new ABIBoolType()), abiValue: [false, true, false, false, false, false, false, false], expectedBytes: [0, 8, 64], }, { description: 'bool[] array with 9 elements', - abiType: { name: ABITypeName.DynamicArray, childType: { name: ABITypeName.Bool } } as ABIType, + abiType: new ABIDynamicArrayType(new ABIBoolType()), abiValue: [true, false, false, true, false, false, true, false, true], expectedBytes: [0, 9, 146, 128], }, @@ -161,46 +172,31 @@ describe('ABIType encode decode', () => { const simpleTupleCases = [ { description: 'tuple (uint8, uint16)', - abiType: { - name: ABITypeName.Tuple, - childTypes: [ - { name: ABITypeName.Uint, bitSize: 8 }, - { name: ABITypeName.Uint, bitSize: 16 }, - ], - } as ABIType, + abiType: new ABITupleType([new ABIUintType(8), new ABIUintType(16)]), abiValue: [1, 2], expectedBytes: [1, 0, 2], }, { description: 'tuple (uint32, uint32)', - abiType: { - name: ABITypeName.Tuple, - childTypes: [ - { name: ABITypeName.Uint, bitSize: 32 }, - { name: ABITypeName.Uint, bitSize: 32 }, - ], - } as ABIType, + abiType: new ABITupleType([new ABIUintType(32), new ABIUintType(32)]), abiValue: [1, 2], expectedBytes: [0, 0, 0, 1, 0, 0, 0, 2], }, { description: 'tuple (uint32, string)', - abiType: { name: ABITypeName.Tuple, childTypes: [{ name: ABITypeName.Uint, bitSize: 32 }, { name: ABITypeName.String }] } as ABIType, + abiType: new ABITupleType([new ABIUintType(32), new ABIStringType()]), abiValue: [42, 'hello'], expectedBytes: [0, 0, 0, 42, 0, 6, 0, 5, 104, 101, 108, 108, 111], }, { description: 'tuple (uint16, bool)', - abiType: { name: ABITypeName.Tuple, childTypes: [{ name: ABITypeName.Uint, bitSize: 16 }, { name: ABITypeName.Bool }] } as ABIType, + abiType: new ABITupleType([new ABIUintType(16), new ABIBoolType()]), abiValue: [1234, false], expectedBytes: [4, 210, 0], }, { description: 'tuple (uint32, string, bool)', - abiType: { - name: ABITypeName.Tuple, - childTypes: [{ name: ABITypeName.Uint, bitSize: 32 }, { name: ABITypeName.String }, { name: ABITypeName.Bool }], - } as ABIType, + abiType: new ABITupleType([new ABIUintType(32), new ABIStringType(), new ABIBoolType()]), abiValue: [42, 'test', false], expectedBytes: [0, 0, 0, 42, 0, 7, 0, 0, 4, 116, 101, 115, 116], }, @@ -269,42 +265,42 @@ describe('ABIType encode decode', () => { test.each(basicTypeCases)('should encode and decode $description', ({ abiType, abiValue, expectedBytes }) => { const expectedUint8Array = new Uint8Array(expectedBytes) - const encoded = encodeABIValue(abiType, abiValue) + const encoded = abiType.encode(abiValue) expect(encoded).toEqual(expectedUint8Array) - const decoded = decodeABIValue(abiType, encoded) + const decoded = abiType.decode(encoded) expect(decoded).toEqual(abiValue) }) test.each(simpleTupleCases)('should encode and decode $description', ({ abiType, abiValue, expectedBytes }) => { const expectedUint8Array = new Uint8Array(expectedBytes) - const encoded = encodeABIValue(abiType, abiValue) + const encoded = abiType.encode(abiValue) expect(encoded).toEqual(expectedUint8Array) - const decoded = decodeABIValue(abiType, encoded) + const decoded = abiType.decode(encoded) expect(decoded).toEqual(abiValue) }) test.each(complexTupleCases)('should encode and decode $description using type string', ({ typeString, abiValue, expectedBytes }) => { - const abiType = getABIType(typeString) + const abiType = ABIType.from(typeString) const expectedUint8Array = new Uint8Array(expectedBytes) - const encoded = encodeABIValue(abiType, abiValue) + const encoded = abiType.encode(abiValue) expect(encoded).toEqual(expectedUint8Array) - const decoded = decodeABIValue(abiType, encoded) + const decoded = abiType.decode(encoded) expect(decoded).toEqual(abiValue) }) test.each(nestedTupleCases)('should encode and decode $description using type string', ({ typeString, abiValue, expectedBytes }) => { - const abiType = getABIType(typeString) + const abiType = ABIType.from(typeString) const expectedUint8Array = new Uint8Array(expectedBytes) - const encoded = encodeABIValue(abiType, abiValue) + const encoded = abiType.encode(abiValue) expect(encoded).toEqual(expectedUint8Array) - const decoded = decodeABIValue(abiType, encoded) + const decoded = abiType.decode(encoded) expect(decoded).toEqual(abiValue) }) @@ -312,8 +308,9 @@ describe('ABIType encode decode', () => { // Generate all valid ABI uint bit lengths Array.from({ length: 64 }, (_, i) => (i + 1) * 8), )('correctly decodes a uint%i', (bitLength) => { - const encoded = encodeABIValue({ name: ABITypeName.Uint, bitSize: bitLength }, 1) - const decoded = decodeABIValue(getABIType(`uint${bitLength}`), encoded) + const abiType = new ABIUintType(bitLength) + const encoded = abiType.encode(1) + const decoded = abiType.decode(encoded) if (bitLength < 53) { expect(typeof decoded).toBe('number') @@ -325,75 +322,47 @@ describe('ABIType encode decode', () => { }) test('Struct and tuple encode decode should match', () => { - const tupleType = getABIType('(uint8,(uint16,string,string[]),(bool,byte),(byte,address))') - const structType = { - name: ABITypeName.Struct, - structName: 'Struct 1', - structFields: [ - { - name: 'field 1', - type: { - name: ABITypeName.Uint, - bitSize: 8, + const tupleType = ABIType.from('(uint8,(uint16,string,string[]),(bool,byte),(byte,address))') + const structType = new ABIStructType('Struct 1', [ + { + name: 'field 1', + type: new ABIUintType(8), + }, + { + name: 'field 2', + type: new ABIStructType('Struct 2', [ + { + name: 'Struct 2 field 1', + type: new ABIUintType(16), }, - }, - { - name: 'field 2', - type: { - name: ABITypeName.Struct, - structName: 'Struct 2', - structFields: [ - { - name: 'Struct 2 field 1', - type: { - name: ABITypeName.Uint, - bitSize: 16, - }, - }, - { - name: 'Struct 2 field 2', - type: { - name: ABITypeName.String, - }, - }, - { - name: 'Struct 2 field 3', - type: { - name: ABITypeName.DynamicArray, - childType: { - name: ABITypeName.String, - }, - }, - }, - ], + { + name: 'Struct 2 field 2', + type: new ABIStringType(), }, - }, - { - name: 'field 3', - type: [ - { - name: 'field 3 child 1', - type: { - name: ABITypeName.Bool, - }, - }, - { - name: 'field 3 child 2', - type: { - name: ABITypeName.Byte, - }, - }, - ], - }, - { - name: 'field 4', - type: { - name: ABITypeName.Tuple, - childTypes: [{ name: ABITypeName.Byte }, { name: ABITypeName.Address }], + { + name: 'Struct 2 field 3', + type: new ABIDynamicArrayType(new ABIStringType()), }, - }, - ], - } satisfies ABIStructType + ]), + }, + { + name: 'field 3', + type: [ + { + name: 'field 3 child 1', + type: new ABIBoolType(), + }, + { + name: 'field 3 child 2', + type: new ABIByteType(), + }, + ], + }, + { + name: 'field 4', + type: new ABITupleType([new ABIByteType(), new ABIAddressType()]), + }, + ]) const tupleValue = [ 123, @@ -416,32 +385,28 @@ describe('ABIType encode decode', () => { 'field 4': [222, Address.fromString('BEKKSMPBTPIGBYJGKD4XK7E7ZQJNZIHJVYFQWW3HNI32JHSH3LOGBRY3LE')], } satisfies ABIStructValue - const encodedTuple = encodeABIValue(tupleType, tupleValue) - const encodedStruct = encodeABIValue(structType, structValue) + const encodedTuple = tupleType.encode(tupleValue) + const encodedStruct = structType.encode(structValue) expect(encodedTuple).toEqual(encodedStruct) - const decodedTuple = decodeABIValue(tupleType, encodedTuple) + const decodedTuple = tupleType.decode(encodedTuple) expect(decodedTuple).toEqual(tupleValue) - const decodedStruct = decodeABIValue(structType, encodedTuple) + const decodedStruct = structType.decode(encodedTuple) expect(decodedStruct).toEqual(structValue) }) test('correctly decodes a struct containing a uint16', () => { - const userStruct = { - name: ABITypeName.Struct, - structName: 'User', - structFields: [ - { - name: 'userId', - type: getABIType('uint16'), - }, - { name: 'name', type: getABIType('string') }, - ], - } satisfies ABIStructType + const userStruct = new ABIStructType('User', [ + { + name: 'userId', + type: ABIType.from('uint16'), + }, + { name: 'name', type: ABIType.from('string') }, + ]) - const decoded = decodeABIValue(userStruct, new Uint8Array([0, 1, 0, 4, 0, 5, 119, 111, 114, 108, 100])) as { + const decoded = userStruct.decode(new Uint8Array([0, 1, 0, 4, 0, 5, 119, 111, 114, 108, 100])) as { userId: number name: string } @@ -455,11 +420,11 @@ describe('ABIType encode decode', () => { describe('Basic byte arrays', () => { test('should convert a simple byte array to Uint8Array', () => { // Create a static array of bytes: byte[4] - const arrayType = getABIType('byte[4]') + const arrayType = ABIType.from('byte[4]') const value = [1, 2, 3, 4] - const encoded = encodeABIValue(arrayType, value) - const result = decodeABIValue(arrayType, encoded) + const encoded = arrayType.encode(value) + const result = arrayType.decode(encoded) expect(result).toBeInstanceOf(Uint8Array) expect(Array.from(result as Uint8Array)).toEqual([1, 2, 3, 4]) @@ -467,22 +432,22 @@ describe('ABIType encode decode', () => { test('should handle dynamic byte arrays', () => { // Create a dynamic array of bytes: byte[] - const arrayType = getABIType('byte[]') + const arrayType = ABIType.from('byte[]') const value = [10, 20, 30, 40, 50] - const encoded = encodeABIValue(arrayType, value) - const result = decodeABIValue(arrayType, encoded) + const encoded = arrayType.encode(value) + const result = arrayType.decode(encoded) expect(result).toBeInstanceOf(Uint8Array) expect(Array.from(result as Uint8Array)).toEqual([10, 20, 30, 40, 50]) }) test('should return existing Uint8Array as is', () => { - const arrayType = getABIType('byte[3]') + const arrayType = ABIType.from('byte[3]') const value = new Uint8Array([5, 6, 7]) - const encoded = encodeABIValue(arrayType, value) - const result = decodeABIValue(arrayType, encoded) + const encoded = arrayType.encode(value) + const result = arrayType.decode(encoded) expect(result).toEqual(value) }) @@ -491,15 +456,15 @@ describe('ABIType encode decode', () => { describe('Nested arrays', () => { test('should convert byte arrays inside arrays', () => { // Create byte[2][] - const outerArrayType = getABIType('byte[2][]') + const outerArrayType = ABIType.from('byte[2][]') const value = [ [1, 2], [3, 4], [5, 6], ] - const encoded = encodeABIValue(outerArrayType, value) - const result = decodeABIValue(outerArrayType, encoded) as ABIValue[] + const encoded = outerArrayType.encode(value) + const result = outerArrayType.decode(encoded) as ABIValue[] expect(Array.isArray(result)).toBe(true) expect(result.length).toBe(3) @@ -515,11 +480,11 @@ describe('ABIType encode decode', () => { test('should not convert non-byte arrays', () => { // Create uint8[3] - const arrayType = getABIType('uint8[3]') + const arrayType = ABIType.from('uint8[3]') const value = [1, 2, 3] - const encoded = encodeABIValue(arrayType, value) - const result = decodeABIValue(arrayType, encoded) + const encoded = arrayType.encode(value) + const result = arrayType.decode(encoded) expect(Array.isArray(result)).toBe(true) expect(result).toEqual([1, 2, 3]) @@ -529,11 +494,11 @@ describe('ABIType encode decode', () => { describe('Tuple tests', () => { test('should handle tuples with byte arrays', () => { // Create (byte[2],bool,byte[3]) - const tupleType = getABIType('(byte[2],bool,byte[3])') + const tupleType = ABIType.from('(byte[2],bool,byte[3])') const value = [[1, 2], true, [3, 4, 5]] - const encoded = encodeABIValue(tupleType, value) - const result = decodeABIValue(tupleType, encoded) as ABIValue[] + const encoded = tupleType.encode(value) + const result = tupleType.decode(encoded) as ABIValue[] expect(Array.isArray(result)).toBe(true) expect(result.length).toBe(3) @@ -548,14 +513,14 @@ describe('ABIType encode decode', () => { test('should handle nested tuples with byte arrays', () => { // Create (byte[2],(byte[1],bool)) - const outerTupleType = getABIType('(byte[2],(byte[1],bool))') + const outerTupleType = ABIType.from('(byte[2],(byte[1],bool))') const value = [ [1, 2], [[3], true], ] - const encoded = encodeABIValue(outerTupleType, value) - const result = decodeABIValue(outerTupleType, encoded) as ABIValue[] + const encoded = outerTupleType.encode(value) + const result = outerTupleType.decode(encoded) as ABIValue[] expect(Array.isArray(result)).toBe(true) expect(result.length).toBe(2) @@ -575,7 +540,7 @@ describe('ABIType encode decode', () => { describe('Complex mixed structures', () => { test('should handle complex nested structures', () => { // Create (byte[2][],uint8,(bool,byte[3])) - const outerTupleType = getABIType('(byte[2][],uint8,(bool,byte[3]))') + const outerTupleType = ABIType.from('(byte[2][],uint8,(bool,byte[3]))') const value = [ [ @@ -587,8 +552,8 @@ describe('ABIType encode decode', () => { [true, [7, 8, 9]], // (bool,byte[3]) ] - const encoded = encodeABIValue(outerTupleType, value) - const result = decodeABIValue(outerTupleType, encoded) as ABIValue[] + const encoded = outerTupleType.encode(value) + const result = outerTupleType.decode(encoded) as ABIValue[] // Check first element (byte[2][]) const byteArrays = result[0] as ABIValue[] @@ -611,11 +576,11 @@ describe('ABIType encode decode', () => { describe('Edge cases', () => { test('should handle empty byte arrays', () => { - const arrayType = getABIType('byte[0]') + const arrayType = ABIType.from('byte[0]') const value: number[] = [] - const encoded = encodeABIValue(arrayType, value) - const result = decodeABIValue(arrayType, encoded) + const encoded = arrayType.encode(value) + const result = arrayType.decode(encoded) expect(result).toBeInstanceOf(Uint8Array) expect((result as Uint8Array).length).toBe(0) diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 624461543..cf6abb396 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -23,705 +23,888 @@ export enum ABITypeName { Struct = 'Struct', } -/** - * Represents an Algorand ABI type for encoding and decoding values as defined in [ARC-0004](https://arc.algorand.foundation/ARCs/arc-0004#types). - */ -export type ABIType = - | ABIUintType - | ABIUfixedType - | ABIAddressType - | ABIBoolType - | ABIByteType - | ABIStringType - | ABITupleType - | ABIStaticArrayType - | ABIDynamicArrayType - | ABIStructType +const STATIC_ARRAY_REGEX = /^([a-z\d[\](),]+)\[(0|[1-9][\d]*)]$/ +const UFIXED_REGEX = /^ufixed([1-9][\d]*)x([1-9][\d]*)$/ +const MAX_LEN = 2 ** 16 - 1 /** - * Encodes an ABI value according to ARC-4 specification. - * @param abiType The ABI type - * @param abiValue The value to encode, must match the ABI type - * @returns The encoded bytes + * Information about a single field in a struct */ -export function encodeABIValue(abiType: ABIType, abiValue: ABIValue): Uint8Array { - switch (abiType.name) { - case ABITypeName.Uint: - return encodeUint(abiType, abiValue) - case ABITypeName.Ufixed: - return encodeUfixed(abiType, abiValue) - case ABITypeName.Address: - return encodeAddress(abiValue) - case ABITypeName.Bool: - return encodeBool(abiValue) - case ABITypeName.Byte: - return encodeByte(abiValue) - case ABITypeName.String: - return encodeString(abiValue) - case ABITypeName.Tuple: - return encodeTuple(abiType, abiValue) - case ABITypeName.StaticArray: - return encodeStaticArray(abiType, abiValue) - case ABITypeName.DynamicArray: - return encodeDynamicArray(abiType, abiValue) - case ABITypeName.Struct: - return encodeStruct(abiType, abiValue) - } +export type ABIStructField = { + /** The name of the struct field */ + name: string + /** The type of the struct field's value */ + type: ABIType | ABIStructField[] } -/** - * Decodes an ABI value according to ARC-4 specification. - * @param abiType The ABI type - * @param abiValue The encoded bytes to decode - * @returns The decoded ABI value - */ -export function decodeABIValue(abiType: ABIType, encodedValue: Uint8Array): ABIValue { - switch (abiType.name) { - case ABITypeName.Uint: - return decodeUint(abiType, encodedValue) - case ABITypeName.Ufixed: - return decodeUfixed(abiType, encodedValue) - case ABITypeName.Address: - return decodeAddress(encodedValue) - case ABITypeName.Bool: - return decodeBool(encodedValue) - case ABITypeName.Byte: - return decodeByte(encodedValue) - case ABITypeName.String: - return decodeString(abiType, encodedValue) - case ABITypeName.Tuple: - return decodeTuple(abiType, encodedValue) - case ABITypeName.StaticArray: - return decodeStaticArray(abiType, encodedValue) - case ABITypeName.DynamicArray: - return decodeDynamicArray(abiType, encodedValue) - case ABITypeName.Struct: - return decodeStruct(abiType, encodedValue) - } +interface Segment { + left: number + right: number } /** - * Gets the ARC-4 type name of an ABI type. - * @param abiType The ABI type - * @returns The ARC-4 name + * Represents an Algorand ABI type for encoding and decoding values as defined in [ARC-0004](https://arc.algorand.foundation/ARCs/arc-0004#types). + * + * This is the abstract base class for all ABI types. */ -export function getABITypeName(abiType: ABIType): string { - switch (abiType.name) { - case ABITypeName.Uint: - return uintToString(abiType) - case ABITypeName.Ufixed: - return ufixedToString(abiType) - case ABITypeName.Address: - return 'address' - case ABITypeName.Bool: - return 'bool' - case ABITypeName.Byte: - return 'byte' - case ABITypeName.String: - return 'string' - case ABITypeName.Tuple: - return tupleToString(abiType) - case ABITypeName.StaticArray: - return staticArrayToString(abiType) - case ABITypeName.DynamicArray: - return dynamicArrayToString(abiType) - case ABITypeName.Struct: - return structToString(abiType) +export abstract class ABIType { + /** The name of this ABI type */ + abstract readonly name: ABITypeName + + /** + * Converts the ABI type to its ARC-4 string representation. + * @returns The ARC-4 type string (e.g., "uint256", "bool", "(uint8,address)") + */ + abstract toString(): string + + /** + * Checks if this ABI type is equal to another. + * @param other The other ABI type to compare with + * @returns True if the types are equal, false otherwise + */ + abstract equals(other: ABIType): boolean + + /** + * Checks if this ABI type is dynamic (variable-length). + * @returns True if the type is dynamic, false otherwise + */ + abstract isDynamic(): boolean + + /** + * Gets the byte length of the encoded type for static types. + * @returns The number of bytes needed to encode this type + * @throws Error if the type is dynamic + */ + abstract byteLen(): number + + /** + * Encodes a value according to this ABI type. + * @param value The value to encode + * @returns The encoded bytes + */ + abstract encode(value: ABIValue): Uint8Array + + /** + * Decodes bytes according to this ABI type. + * @param bytes The bytes to decode + * @returns The decoded value + */ + abstract decode(bytes: Uint8Array): ABIValue + + /** + * Creates an ABI type from an ARC-4 type string. + * @param str The ARC-4 type string (e.g., "uint256", "bool", "(uint8,address)") + * @returns The corresponding ABI type + */ + static from(str: string): ABIType { + if (str.endsWith('[]')) { + const childType = ABIType.from(str.slice(0, str.length - 2)) + return new ABIDynamicArrayType(childType) + } + if (str.endsWith(']')) { + const stringMatches = str.match(STATIC_ARRAY_REGEX) + if (!stringMatches || stringMatches.length !== 3) { + throw new Error(`Validation Error: malformed static array string: ${str}`) + } + const arrayLengthStr = stringMatches[2] + const arrayLength = parseInt(arrayLengthStr, 10) + if (arrayLength > MAX_LEN) { + throw new Error(`Validation Error: array length exceeds limit ${MAX_LEN}`) + } + const childType = ABIType.from(stringMatches[1]) + return new ABIStaticArrayType(childType, arrayLength) + } + if (str.startsWith('uint')) { + const digitsOnly = (s: string) => [...s].every((c) => '0123456789'.includes(c)) + const typeSizeStr = str.slice(4, str.length) + if (!digitsOnly(typeSizeStr)) { + throw new Error(`Validation Error: malformed uint string: ${typeSizeStr}`) + } + const bitSize = parseInt(typeSizeStr, 10) + if (bitSize > MAX_LEN) { + throw new Error(`Validation Error: malformed uint string: ${bitSize}`) + } + return new ABIUintType(bitSize) + } + if (str === 'byte') { + return new ABIByteType() + } + if (str.startsWith('ufixed')) { + const stringMatches = str.match(UFIXED_REGEX) + if (!stringMatches || stringMatches.length !== 3) { + throw new Error(`malformed ufixed type: ${str}`) + } + const bitSize = parseInt(stringMatches[1], 10) + const precision = parseInt(stringMatches[2], 10) + return new ABIUfixedType(bitSize, precision) + } + if (str === 'bool') { + return new ABIBoolType() + } + if (str === 'address') { + return new ABIAddressType() + } + if (str === 'string') { + return new ABIStringType() + } + if (str.length >= 2 && str[0] === '(' && str[str.length - 1] === ')') { + const tupleContent = parseTupleContent(str.slice(1, str.length - 1)) + const childTypes: ABIType[] = [] + for (let i = 0; i < tupleContent.length; i++) { + const ti = ABIType.from(tupleContent[i]) + childTypes.push(ti) + } + return new ABITupleType(childTypes) + } + throw new Error(`cannot convert a string ${str} to an ABI type`) } } -const STATIC_ARRAY_REGEX = /^([a-z\d[\](),]+)\[(0|[1-9][\d]*)]$/ -const UFIXED_REGEX = /^ufixed([1-9][\d]*)x([1-9][\d]*)$/ -const MAX_LEN = 2 ** 16 - 1 +// ============================================================================ +// Primitive Types +// ============================================================================ /** - * Gets the ABI type from an ARC-4 type name - * @param str the ARC-4 type name - * @returns the ABI type + * An unsigned integer ABI type of a specific bit size. */ -export function getABIType(str: string): ABIType { - if (str.endsWith('[]')) { - const childType = getABIType(str.slice(0, str.length - 2)) - return { - name: ABITypeName.DynamicArray, - childType: childType, +export class ABIUintType extends ABIType { + readonly name = ABITypeName.Uint + + /** + * Creates a new unsigned integer type. + * @param bitSize The bit size (must be a multiple of 8, between 8 and 512) + */ + constructor(public readonly bitSize: number) { + super() + if (bitSize % 8 !== 0 || bitSize < 8 || bitSize > 512) { + throw new Error(`Validation Error: unsupported uint type bitSize: ${bitSize}`) } } - if (str.endsWith(']')) { - const stringMatches = str.match(STATIC_ARRAY_REGEX) - // Match the string itself, array element type, then array length - if (!stringMatches || stringMatches.length !== 3) { - throw new Error(`Validation Error: malformed static array string: ${str}`) - } - // Parse static array using regex - const arrayLengthStr = stringMatches[2] - const arrayLength = parseInt(arrayLengthStr, 10) - if (arrayLength > MAX_LEN) { - throw new Error(`Validation Error: array length exceeds limit ${MAX_LEN}`) - } - // Parse the array element type - const childType = getABIType(stringMatches[1]) - return { - name: ABITypeName.StaticArray, - childType: childType, - length: arrayLength, - } + toString(): string { + return `uint${this.bitSize}` + } + + equals(other: ABIType): boolean { + return other instanceof ABIUintType && this.bitSize === other.bitSize + } + + isDynamic(): boolean { + return false + } + + byteLen(): number { + return this.bitSize / 8 } - if (str.startsWith('uint')) { - // Checks if the parsed number contains only digits, no whitespaces - const digitsOnly = (s: string) => [...s].every((c) => '0123456789'.includes(c)) - const typeSizeStr = str.slice(4, str.length) - if (!digitsOnly(typeSizeStr)) { - throw new Error(`Validation Error: malformed uint string: ${typeSizeStr}`) + + encode(value: ABIValue): Uint8Array { + if (typeof value !== 'bigint' && typeof value !== 'number') { + throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) } - const bitSize = parseInt(typeSizeStr, 10) - if (bitSize > MAX_LEN) { - throw new Error(`Validation Error: malformed uint string: ${bitSize}`) + + if (value >= BigInt(2 ** this.bitSize) || value < BigInt(0)) { + throw new Error(`${value} is not a non-negative int or too big to fit in size ${this.toString()}`) } - return { - name: ABITypeName.Uint, - bitSize: bitSize, + if (typeof value === 'number' && !Number.isSafeInteger(value)) { + throw new Error(`${value} should be converted into a BigInt before it is encoded`) } + return bigIntToBytes(value, this.bitSize / 8) } - if (str === 'byte') { - return { name: ABITypeName.Byte } + + decode(bytes: Uint8Array): ABIValue { + if (bytes.length !== this.bitSize / 8) { + throw new Error(`byte string must correspond to a ${this.toString()}`) + } + const value = bytesToBigInt(bytes) + return this.bitSize < 53 ? Number(value) : value } - if (str.startsWith('ufixed')) { - const stringMatches = str.match(UFIXED_REGEX) - if (!stringMatches || stringMatches.length !== 3) { - throw new Error(`malformed ufixed type: ${str}`) +} + +/** + * A fixed-point number ABI type of a specific bit size and precision. + */ +export class ABIUfixedType extends ABIType { + readonly name = ABITypeName.Ufixed + + /** + * Creates a new fixed-point type. + * @param bitSize The bit size (must be a multiple of 8, between 8 and 512) + * @param precision The decimal precision (must be between 1 and 160) + */ + constructor( + public readonly bitSize: number, + public readonly precision: number, + ) { + super() + if (bitSize % 8 !== 0 || bitSize < 8 || bitSize > 512) { + throw new Error(`Validation Error: unsupported ufixed type bitSize: ${bitSize}`) + } + if (precision > 160 || precision < 1) { + throw new Error(`Validation Error: unsupported ufixed type precision: ${precision}`) } - const bitSize = parseInt(stringMatches[1], 10) - const precision = parseInt(stringMatches[2], 10) - return { name: ABITypeName.Ufixed, bitSize: bitSize, precision: precision } } - if (str === 'bool') { - return { name: ABITypeName.Bool } + + toString(): string { + return `ufixed${this.bitSize}x${this.precision}` + } + + equals(other: ABIType): boolean { + return other instanceof ABIUfixedType && this.bitSize === other.bitSize && this.precision === other.precision } - if (str === 'address') { - return { name: ABITypeName.Address } + + isDynamic(): boolean { + return false } - if (str === 'string') { - return { name: ABITypeName.String } + + byteLen(): number { + return this.bitSize / 8 } - if (str.length >= 2 && str[0] === '(' && str[str.length - 1] === ')') { - const tupleContent = parseTupleContent(str.slice(1, str.length - 1)) - const childTypes: ABIType[] = [] - for (let i = 0; i < tupleContent.length; i++) { - const ti = getABIType(tupleContent[i]) - childTypes.push(ti) + + encode(value: ABIValue): Uint8Array { + if (typeof value !== 'bigint' && typeof value !== 'number') { + throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + } + if (value >= BigInt(2 ** this.bitSize) || value < BigInt(0)) { + throw new Error(`${value} is not a non-negative int or too big to fit in size ${this.toString()}`) + } + if (typeof value === 'number' && !Number.isSafeInteger(value)) { + throw new Error(`${value} should be converted into a BigInt before it is encoded`) } + return bigIntToBytes(value, this.bitSize / 8) + } - return { - name: ABITypeName.Tuple, - childTypes: childTypes, + decode(bytes: Uint8Array): ABIValue { + if (bytes.length !== this.bitSize / 8) { + throw new Error(`byte string must correspond to a ${this.toString()}`) } + const value = bytesToBigInt(bytes) + return this.bitSize < 53 ? Number(value) : value } - throw new Error(`cannot convert a string ${str} to an ABI type`) } -export function parseTupleContent(content: string): string[] { - if (content === '') { - return [] +/** + * An Algorand address ABI type. + */ +export class ABIAddressType extends ABIType { + readonly name = ABITypeName.Address + + toString(): string { + return 'address' } - if (content.startsWith(',')) { - throw new Error('Validation Error: the content should not start with comma') + equals(other: ABIType): boolean { + return other instanceof ABIAddressType } - if (content.endsWith(',')) { - throw new Error('Validation Error: the content should not end with comma') + + isDynamic(): boolean { + return false } - if (content.includes(',,')) { - throw new Error('Validation Error: the content should not have consecutive commas') + + byteLen(): number { + return PUBLIC_KEY_BYTE_LENGTH } - const tupleStrings: string[] = [] - let depth = 0 - let word = '' + encode(value: ABIValue): Uint8Array { + if (typeof value === 'string') { + return Address.fromString(value).publicKey + } - for (const ch of content) { - word += ch - if (ch === '(') { - depth += 1 - } else if (ch === ')') { - depth -= 1 - } else if (ch === ',' && depth === 0) { - word = word.slice(0, -1) // Remove the comma - tupleStrings.push(word) - word = '' + if (value instanceof Address) { + return value.publicKey } - } - if (word !== '') { - tupleStrings.push(word) + throw new Error(`Encoding Error: Cannot encode value as address: ${value}`) } - if (depth !== 0) { - throw new Error('Validation Error: the content has mismatched parentheses') + decode(bytes: Uint8Array): ABIValue { + return new Address(bytes) } - - return tupleStrings } -// Primitive Types - -// Address - /** - * An Algorand address. + * A boolean ABI type. */ -export type ABIAddressType = { - name: ABITypeName.Address -} +export class ABIBoolType extends ABIType { + readonly name = ABITypeName.Bool -function encodeAddress(value: ABIValue): Uint8Array { - if (typeof value === 'string') { - return Address.fromString(value).publicKey + toString(): string { + return 'bool' } - if (value instanceof Address) { - return value.publicKey + equals(other: ABIType): boolean { + return other instanceof ABIBoolType } - throw new Error(`Encoding Error: Cannot encode value as address: ${value}`) -} - -function decodeAddress(bytes: Uint8Array): ABIValue { - return new Address(bytes) -} + isDynamic(): boolean { + return false + } -// Boolean + byteLen(): number { + return 1 + } -/** - * A boolean value. - */ -export type ABIBoolType = { - name: ABITypeName.Bool -} + encode(value: ABIValue): Uint8Array { + if (typeof value !== 'boolean') { + throw new Error(`Cannot encode value as bool: ${value}`) + } -function encodeBool(value: ABIValue): Uint8Array { - if (typeof value !== 'boolean') { - throw new Error(`Cannot encode value as bool: ${value}`) + return value ? new Uint8Array([0x80]) : new Uint8Array([0x00]) } - return value ? new Uint8Array([0x80]) : new Uint8Array([0x00]) -} + decode(bytes: Uint8Array): ABIValue { + if (bytes.length !== 1) { + throw new Error(`DecodingError: Expected 1 byte for bool, got ${bytes.length}`) + } -function decodeBool(bytes: Uint8Array): ABIValue { - if (bytes.length !== 1) { - throw new Error(`DecodingError: Expected 1 byte for bool, got ${bytes.length}`) + return (bytes[0] & 0x80) !== 0 } - - return (bytes[0] & 0x80) !== 0 } -// Byte - /** - * A single byte. + * A single byte ABI type. */ -export type ABIByteType = { - name: ABITypeName.Byte -} +export class ABIByteType extends ABIType { + readonly name = ABITypeName.Byte -function encodeByte(value: ABIValue): Uint8Array { - if (typeof value !== 'number' && typeof value !== 'bigint') { - throw new Error(`Validation Error: Cannot encode value as byte: ${value}`) + toString(): string { + return 'byte' } - const numberValue = typeof value === 'bigint' ? Number(value) : value - if (value < 0 || value > 255) { - throw new Error(`Encoding Error: Byte value must be between 0 and 255, got ${numberValue}`) + + equals(other: ABIType): boolean { + return other instanceof ABIByteType } - return new Uint8Array([numberValue]) -} + isDynamic(): boolean { + return false + } -function decodeByte(bytes: Uint8Array): ABIValue { - if (bytes.length !== 1) { - throw new Error(`DecodingError: Expected 1 byte for byte type, got ${bytes.length}`) + byteLen(): number { + return 1 } - return bytes[0] -} + encode(value: ABIValue): Uint8Array { + if (typeof value !== 'number' && typeof value !== 'bigint') { + throw new Error(`Validation Error: Cannot encode value as byte: ${value}`) + } + const numberValue = typeof value === 'bigint' ? Number(value) : value + if (value < 0 || value > 255) { + throw new Error(`Encoding Error: Byte value must be between 0 and 255, got ${numberValue}`) + } + + return new Uint8Array([numberValue]) + } + + decode(bytes: Uint8Array): ABIValue { + if (bytes.length !== 1) { + throw new Error(`DecodingError: Expected 1 byte for byte type, got ${bytes.length}`) + } -// String + return bytes[0] + } +} /** - * A dynamic-length string. + * A dynamic-length string ABI type. */ -export type ABIStringType = { - name: ABITypeName.String -} +export class ABIStringType extends ABIType { + readonly name = ABITypeName.String -function encodeString(value: ABIValue): Uint8Array { - if (typeof value !== 'string' && !(value instanceof Uint8Array)) { - throw new Error(`Encoding Error: Cannot encode value as string: ${value}`) + toString(): string { + return 'string' } - let encodedBytes: Uint8Array - if (typeof value === 'string') { - encodedBytes = new TextEncoder().encode(value) - } else { - encodedBytes = value + equals(other: ABIType): boolean { + return other instanceof ABIStringType } - const encodedLength = bigIntToBytes(encodedBytes.length, LENGTH_ENCODE_BYTE_SIZE) - const mergedBytes = new Uint8Array(encodedBytes.length + LENGTH_ENCODE_BYTE_SIZE) - mergedBytes.set(encodedLength) - mergedBytes.set(encodedBytes, LENGTH_ENCODE_BYTE_SIZE) - return mergedBytes -} -function decodeString(_type: ABIStringType, bytes: Uint8Array): ABIValue { - if (bytes.length < LENGTH_ENCODE_BYTE_SIZE) { - throw new Error( - `byte string is too short to be decoded. Actual length is ${bytes.length}, but expected at least ${LENGTH_ENCODE_BYTE_SIZE}`, - ) + isDynamic(): boolean { + return true } - const view = new DataView(bytes.buffer, bytes.byteOffset, LENGTH_ENCODE_BYTE_SIZE) - const byteLength = view.getUint16(0) - const byteValue = bytes.slice(LENGTH_ENCODE_BYTE_SIZE, bytes.length) - if (byteLength !== byteValue.length) { - throw new Error(`string length bytes do not match the actual length of string. Expected ${byteLength}, got ${byteValue.length}`) + + byteLen(): number { + throw new Error(`Validation Error: Failed to get size, string is a dynamic type`) + } + + encode(value: ABIValue): Uint8Array { + if (typeof value !== 'string' && !(value instanceof Uint8Array)) { + throw new Error(`Encoding Error: Cannot encode value as string: ${value}`) + } + + let encodedBytes: Uint8Array + if (typeof value === 'string') { + encodedBytes = new TextEncoder().encode(value) + } else { + encodedBytes = value + } + const encodedLength = bigIntToBytes(encodedBytes.length, LENGTH_ENCODE_BYTE_SIZE) + const mergedBytes = new Uint8Array(encodedBytes.length + LENGTH_ENCODE_BYTE_SIZE) + mergedBytes.set(encodedLength) + mergedBytes.set(encodedBytes, LENGTH_ENCODE_BYTE_SIZE) + return mergedBytes + } + + decode(bytes: Uint8Array): ABIValue { + if (bytes.length < LENGTH_ENCODE_BYTE_SIZE) { + throw new Error( + `byte string is too short to be decoded. Actual length is ${bytes.length}, but expected at least ${LENGTH_ENCODE_BYTE_SIZE}`, + ) + } + const view = new DataView(bytes.buffer, bytes.byteOffset, LENGTH_ENCODE_BYTE_SIZE) + const byteLength = view.getUint16(0) + const byteValue = bytes.slice(LENGTH_ENCODE_BYTE_SIZE, bytes.length) + if (byteLength !== byteValue.length) { + throw new Error(`string length bytes do not match the actual length of string. Expected ${byteLength}, got ${byteValue.length}`) + } + return new TextDecoder('utf-8').decode(byteValue) } - return new TextDecoder('utf-8').decode(byteValue) } -// Ufixed +// ============================================================================ +// Collection Types +// ============================================================================ /** - * A fixed-point number of a specific bit size and precision. + * A tuple ABI type containing other ABI types. */ -export type ABIUfixedType = { - name: ABITypeName.Ufixed - bitSize: number - precision: number -} - -function validateUfixed(type: ABIUfixedType) { - const size = type.bitSize - const precision = type.precision - if (size % 8 !== 0 || size < 8 || size > 512) { - throw new Error(`Validation Error: unsupported ufixed type bitSize: ${size}`) - } - if (precision > 160 || precision < 1) { - throw new Error(`Validation Error: unsupported ufixed type precision: ${precision}`) +export class ABITupleType extends ABIType { + readonly name = ABITypeName.Tuple + + /** + * Creates a new tuple type. + * @param childTypes The types of the tuple elements + */ + constructor(public readonly childTypes: ABIType[]) { + super() + if (childTypes.length > MAX_LEN) { + throw new Error(`Validation Error: tuple has too many child types: ${childTypes.length}`) + } } -} -function encodeUfixed(type: ABIUfixedType, value: ABIValue): Uint8Array { - validateUfixed(type) + toString(): string { + const typeStrings: string[] = [] + for (let i = 0; i < this.childTypes.length; i++) { + typeStrings[i] = this.childTypes[i].toString() + } + return `(${typeStrings.join(',')})` + } - if (typeof value !== 'bigint' && typeof value !== 'number') { - throw new Error(`Cannot encode value as ${ufixedToString(type)}: ${value}`) + equals(other: ABIType): boolean { + if (!(other instanceof ABITupleType)) return false + if (this.childTypes.length !== other.childTypes.length) return false + return this.childTypes.every((t, i) => t.equals(other.childTypes[i])) } - if (value >= BigInt(2 ** type.bitSize) || value < BigInt(0)) { - throw new Error(`${value} is not a non-negative int or too big to fit in size ${type.toString()}`) + + isDynamic(): boolean { + return this.childTypes.some((c) => c.isDynamic()) } - if (typeof value === 'number' && !Number.isSafeInteger(value)) { - throw new Error(`${value} should be converted into a BigInt before it is encoded`) + + byteLen(): number { + let size = 0 + let i = 0 + while (i < this.childTypes.length) { + const childType = this.childTypes[i] + if (childType instanceof ABIBoolType) { + const sequenceEndIndex = findBoolSequenceEnd(this.childTypes, i) + const boolCount = sequenceEndIndex - i + 1 + size += Math.ceil(boolCount / 8) + i = sequenceEndIndex + 1 + } else { + size += childType.byteLen() + i++ + } + } + return size } - return bigIntToBytes(value, type.bitSize / 8) -} -function decodeUfixed(type: ABIUfixedType, bytes: Uint8Array): ABIValue { - validateUfixed(type) + encode(value: ABIValue): Uint8Array { + if (!Array.isArray(value) && !(value instanceof Uint8Array)) { + throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + } - if (bytes.length !== type.bitSize / 8) { - throw new Error(`byte string must correspond to a ${ufixedToString(type)}`) - } + const values = Array.from(value) - const value = bytesToBigInt(bytes) - return type.bitSize < 53 ? Number(value) : value -} + if (this.childTypes.length !== values.length) { + throw new Error('Encoding Error: Mismatch lengths between the values and types') + } -function ufixedToString(type: ABIUfixedType): string { - return `ufixed${type.bitSize}x${type.precision}` -} + const heads: Uint8Array[] = [] + const tails: Uint8Array[] = [] + const isDynamicIndex = new Map() + let abiTypesCursor = 0 -// Uint + while (abiTypesCursor < this.childTypes.length) { + const childType = this.childTypes[abiTypesCursor] -/** - * An unsigned integer of a specific bit size. - */ -export type ABIUintType = { - name: ABITypeName.Uint - bitSize: number -} + if (childType.isDynamic()) { + isDynamicIndex.set(heads.length, true) + heads.push(new Uint8Array(2)) // Placeholder for dynamic offset + tails.push(childType.encode(values[abiTypesCursor])) + } else { + if (childType instanceof ABIBoolType) { + const boolSequenceEndIndex = findBoolSequenceEnd(this.childTypes, abiTypesCursor) + const boolValues = values.slice(abiTypesCursor, boolSequenceEndIndex + 1) + const compressedBool = compressBools(boolValues) + heads.push(new Uint8Array([compressedBool])) + abiTypesCursor = boolSequenceEndIndex + } else { + heads.push(childType.encode(values[abiTypesCursor])) + } + isDynamicIndex.set(abiTypesCursor, false) + tails.push(new Uint8Array(0)) + } + abiTypesCursor += 1 + } -function validateUint(type: ABIUintType) { - const size = type.bitSize - if (size % 8 !== 0 || size < 8 || size > 512) { - throw new Error(`Validation Error: unsupported uint type bitSize: ${size}`) - } -} + const headLength = heads.reduce((sum, head) => sum + head.length, 0) + let tailLength = 0 -function encodeUint(type: ABIUintType, value: ABIValue): Uint8Array { - validateUint(type) + for (let i = 0; i < heads.length; i++) { + if (isDynamicIndex.get(i)) { + const headValue = headLength + tailLength + if (headValue > 0xffff) { + throw new Error(`Encoding Error: Value ${headValue} cannot fit in u16`) + } + heads[i] = new Uint8Array([(headValue >> 8) & 0xff, headValue & 0xff]) + } + tailLength += tails[i].length + } - if (typeof value !== 'bigint' && typeof value !== 'number') { - throw new Error(`Cannot encode value as uint${type.bitSize}: ${value}`) - } + const totalLength = heads.reduce((sum, head) => sum + head.length, 0) + tails.reduce((sum, tail) => sum + tail.length, 0) + const result = new Uint8Array(totalLength) + let offset = 0 - if (value >= BigInt(2 ** type.bitSize) || value < BigInt(0)) { - throw new Error(`${value} is not a non-negative int or too big to fit in size uint${type.bitSize}`) - } - if (typeof value === 'number' && !Number.isSafeInteger(value)) { - throw new Error(`${value} should be converted into a BigInt before it is encoded`) - } - return bigIntToBytes(value, type.bitSize / 8) -} + for (const head of heads) { + result.set(head, offset) + offset += head.length + } -function decodeUint(type: ABIUintType, bytes: Uint8Array): ABIValue { - validateUint(type) + for (const tail of tails) { + result.set(tail, offset) + offset += tail.length + } - if (bytes.length !== type.bitSize / 8) { - throw new Error(`byte string must correspond to a uint${type.bitSize}`) + return result } - const value = bytesToBigInt(bytes) - return type.bitSize < 53 ? Number(value) : value -} -function uintToString(type: ABIUintType): string { - return `uint${type.bitSize}` -} + decode(bytes: Uint8Array): ABIValue[] { + const valuePartitions = extractValues(this.childTypes, bytes) + const values: ABIValue[] = [] -// Collection Types + for (let i = 0; i < this.childTypes.length; i++) { + const childType = this.childTypes[i] + const valuePartition = valuePartitions[i] + const childValue = childType.decode(valuePartition) + values.push(childValue) + } + + return values + } +} -// Dynamic Array /** - * A dynamic-length array of another ABI type. + * A static-length array ABI type. */ -export type ABIDynamicArrayType = { - name: ABITypeName.DynamicArray - childType: ABIType -} +export class ABIStaticArrayType extends ABIType { + readonly name = ABITypeName.StaticArray + + /** + * Creates a new static array type. + * @param childType The type of the array elements + * @param length The fixed length of the array + */ + constructor( + public readonly childType: ABIType, + public readonly length: number, + ) { + super() + if (length < 0 || length > MAX_LEN) { + throw new Error(`Validation Error: invalid static array length: ${length}`) + } + } -function encodeDynamicArray(type: ABIDynamicArrayType, value: ABIValue): Uint8Array { - if (!Array.isArray(value) && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as ${dynamicArrayToString(type)}: ${value}`) + toString(): string { + return `${this.childType.toString()}[${this.length}]` } - const convertedTuple = dynamicArrayToABITupleType(type, value.length) - const encodedTuple = encodeTuple(convertedTuple, value) - const encodedLength = bigIntToBytes(convertedTuple.childTypes.length, LENGTH_ENCODE_BYTE_SIZE) - return concatArrays(encodedLength, encodedTuple) -} -function decodeDynamicArray(type: ABIDynamicArrayType, bytes: Uint8Array): ABIValue { - const view = new DataView(bytes.buffer, 0, LENGTH_ENCODE_BYTE_SIZE) - const byteLength = view.getUint16(0) - const convertedTuple = dynamicArrayToABITupleType(type, byteLength) - const decoded = decodeTuple(convertedTuple, bytes.slice(LENGTH_ENCODE_BYTE_SIZE, bytes.length)) + equals(other: ABIType): boolean { + return other instanceof ABIStaticArrayType && this.childType.equals(other.childType) && this.length === other.length + } - // Convert byte arrays to Uint8Array - if (type.childType.name === ABITypeName.Byte && Array.isArray(decoded)) { - return new Uint8Array(decoded as number[]) + isDynamic(): boolean { + return this.childType.isDynamic() } - return decoded -} + byteLen(): number { + if (this.childType instanceof ABIBoolType) { + return Math.ceil(this.length / 8) + } + return this.childType.byteLen() * this.length + } -function dynamicArrayToABITupleType(type: ABIDynamicArrayType, length: number) { - return { - childTypes: Array(length).fill(type.childType), - name: ABITypeName.Tuple, - } satisfies ABITupleType -} + /** + * Converts this static array type to an equivalent tuple type. + * @returns The equivalent tuple type + */ + toABITupleType(): ABITupleType { + return new ABITupleType(Array(this.length).fill(this.childType)) + } -function dynamicArrayToString(type: ABIDynamicArrayType): string { - return `${getABITypeName(type.childType)}[]` -} + encode(value: ABIValue): Uint8Array { + if (!Array.isArray(value) && !(value instanceof Uint8Array)) { + throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + } + if (value.length !== this.length) { + throw new Error(`Value array does not match static array length. Expected ${this.length}, got ${value.length}`) + } + const convertedTuple = this.toABITupleType() + return convertedTuple.encode(value) + } -// Static Array + decode(bytes: Uint8Array): ABIValue { + const convertedTuple = this.toABITupleType() + const decoded = convertedTuple.decode(bytes) + + // Convert byte arrays to Uint8Array + if (this.childType instanceof ABIByteType && Array.isArray(decoded)) { + return new Uint8Array(decoded as number[]) + } + + return decoded + } +} /** - * A static-length array of another ABI type. + * A dynamic-length array ABI type. */ -export type ABIStaticArrayType = { - name: ABITypeName.StaticArray - childType: ABIType - length: number -} +export class ABIDynamicArrayType extends ABIType { + readonly name = ABITypeName.DynamicArray -function encodeStaticArray(type: ABIStaticArrayType, value: ABIValue): Uint8Array { - if (!Array.isArray(value) && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as ${staticArrayToString(type)}: ${value}`) + /** + * Creates a new dynamic array type. + * @param childType The type of the array elements + */ + constructor(public readonly childType: ABIType) { + super() } - if (value.length !== type.length) { - throw new Error(`Value array does not match static array length. Expected ${type.length}, got ${value.length}`) + + toString(): string { + return `${this.childType.toString()}[]` } - const convertedTuple = staticArrayToABITupleType(type) - return encodeTuple(convertedTuple, value) -} -function decodeStaticArray(type: ABIStaticArrayType, bytes: Uint8Array): ABIValue { - const convertedTuple = staticArrayToABITupleType(type) - const decoded = decodeTuple(convertedTuple, bytes) + equals(other: ABIType): boolean { + return other instanceof ABIDynamicArrayType && this.childType.equals(other.childType) + } - // Convert byte arrays to Uint8Array - if (type.childType.name === ABITypeName.Byte && Array.isArray(decoded)) { - return new Uint8Array(decoded as number[]) + isDynamic(): boolean { + return true } - return decoded -} + byteLen(): number { + throw new Error(`Validation Error: Failed to get size, dynamic array is a dynamic type`) + } -function staticArrayToString(type: ABIStaticArrayType): string { - return `${getABITypeName(type.childType)}[${type.length}]` -} + /** + * Converts this dynamic array type to an equivalent tuple type of a given length. + * @param length The number of elements + * @returns The equivalent tuple type + */ + toABITupleType(length: number): ABITupleType { + return new ABITupleType(Array(length).fill(this.childType)) + } -function staticArrayToABITupleType(type: ABIStaticArrayType) { - return { - childTypes: Array(type.length).fill(type.childType), - name: ABITypeName.Tuple, - } satisfies ABITupleType -} + encode(value: ABIValue): Uint8Array { + if (!Array.isArray(value) && !(value instanceof Uint8Array)) { + throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + } + const convertedTuple = this.toABITupleType(value.length) + const encodedTuple = convertedTuple.encode(value) + const encodedLength = bigIntToBytes(convertedTuple.childTypes.length, LENGTH_ENCODE_BYTE_SIZE) + return concatArrays(encodedLength, encodedTuple) + } -// Struct + decode(bytes: Uint8Array): ABIValue { + const view = new DataView(bytes.buffer, 0, LENGTH_ENCODE_BYTE_SIZE) + const byteLength = view.getUint16(0) + const convertedTuple = this.toABITupleType(byteLength) + const decoded = convertedTuple.decode(bytes.slice(LENGTH_ENCODE_BYTE_SIZE, bytes.length)) -export type ABIStructType = { - name: ABITypeName.Struct - structName: string - structFields: ABIStructField[] -} + // Convert byte arrays to Uint8Array + if (this.childType instanceof ABIByteType && Array.isArray(decoded)) { + return new Uint8Array(decoded as number[]) + } -/** Information about a single field in a struct */ -export type ABIStructField = { - /** The name of the struct field */ - name: string - /** The type of the struct field's value */ - type: ABIType | ABIStructField[] + return decoded + } } -function encodeStruct(type: ABIStructType, value: ABIValue): Uint8Array { - if (typeof value !== 'object' || Array.isArray(value) || value instanceof Uint8Array || value instanceof Address) { - throw new Error(`Cannot encode value as ${structToString(type)}: ${value}`) +/** + * A struct ABI type with named fields. + */ +export class ABIStructType extends ABIType { + readonly name = ABITypeName.Struct + + /** + * Creates a new struct type. + * @param structName The name of the struct + * @param structFields The fields of the struct + */ + constructor( + public readonly structName: string, + public readonly structFields: ABIStructField[], + ) { + super() + } + + toString(): string { + const tupleType = this.toABITupleType() + return tupleType.toString() + } + + equals(other: ABIType): boolean { + if (!(other instanceof ABIStructType)) return false + if (this.structName !== other.structName) return false + if (this.structFields.length !== other.structFields.length) return false + return this.structFields.every((f, i) => { + const otherField = other.structFields[i] + if (f.name !== otherField.name) return false + if (Array.isArray(f.type) && Array.isArray(otherField.type)) { + return JSON.stringify(f.type) === JSON.stringify(otherField.type) + } + if (f.type instanceof ABIType && otherField.type instanceof ABIType) { + return f.type.equals(otherField.type) + } + return false + }) } - const tupleType = getABITupleTypeFromABIStructType(type) - const tupleValue = getTupleValueFromStructValue(type, value) - return encodeTuple(tupleType, tupleValue) -} - -function decodeStruct(type: ABIStructType, bytes: Uint8Array): ABIStructValue { - const tupleType = getABITupleTypeFromABIStructType(type) - const tupleValue = decodeTuple(tupleType, bytes) + isDynamic(): boolean { + const tupleType = this.toABITupleType() + return tupleType.isDynamic() + } - return getStructValueFromTupleValue(type, tupleValue) -} + byteLen(): number { + const tupleType = this.toABITupleType() + return tupleType.byteLen() + } -export function getABIStructType(structName: string, structs: Record): ABIStructType { - const getStructFieldType = (structFieldType: string | StructField[]): ABIType | ABIStructField[] => { - // When the input is an array of struct fields - if (Array.isArray(structFieldType)) { - return structFieldType.map((structField) => ({ - name: structField.name, - type: getStructFieldType(structField.type), - })) + /** + * Converts this struct type to an equivalent tuple type. + * @returns The equivalent tuple type + */ + toABITupleType(): ABITupleType { + const getABITupleTypeFromABIStructFields = (fields: ABIStructField[]): ABITupleType => { + const childTypes = fields.map((field) => + Array.isArray(field.type) + ? getABITupleTypeFromABIStructFields(field.type) + : field.type instanceof ABIStructType + ? field.type.toABITupleType() + : field.type, + ) + return new ABITupleType(childTypes) } - // When the input is a name of another struct - if (structs[structFieldType]) { - return getABIStructType(structFieldType, structs) - } + return getABITupleTypeFromABIStructFields(this.structFields) + } + + /** + * Creates an ABIStructType from struct name and struct definitions. + * @param structName The name of the struct + * @param structs A record of struct definitions + * @returns The struct type + */ + static fromStruct(structName: string, structs: Record): ABIStructType { + const getStructFieldType = (structFieldType: string | StructField[]): ABIType | ABIStructField[] => { + // When the input is an array of struct fields + if (Array.isArray(structFieldType)) { + return structFieldType.map((structField) => ({ + name: structField.name, + type: getStructFieldType(structField.type), + })) + } - // When the input in an ABI type name - return getABIType(structFieldType) - } + // When the input is a name of another struct + if (structs[structFieldType]) { + return ABIStructType.fromStruct(structFieldType, structs) + } - if (!structs[structName]) throw new Error('Struct not found') + // When the input in an ABI type name + return ABIType.from(structFieldType) + } - const fields = structs[structName] - return { - name: ABITypeName.Struct, - structName: structName, - structFields: fields.map((f) => ({ - name: f.name, - type: getStructFieldType(f.type), - })), - } satisfies ABIStructType -} + if (!structs[structName]) throw new Error('Struct not found') -function getABITupleTypeFromABIStructType(struct: ABIStructType): ABITupleType { - const getABITupleTypeFromABIStructFields = (fields: ABIStructField[]): ABITupleType => { - const childTypes = fields.map((field) => - Array.isArray(field.type) - ? getABITupleTypeFromABIStructFields(field.type) - : field.type.name === ABITypeName.Struct - ? getABITupleTypeFromABIStructType(field.type) - : field.type, + const fields = structs[structName] + return new ABIStructType( + structName, + fields.map((f) => ({ + name: f.name, + type: getStructFieldType(f.type), + })), ) - return { - name: ABITypeName.Tuple, - childTypes, - } satisfies ABITupleType } - return getABITupleTypeFromABIStructFields(struct.structFields) -} - -function structToString(type: ABIStructType): string { - // TODO: PD - confirm with Dan about this - const tupleType = getABITupleTypeFromABIStructType(type) - return tupleToString(tupleType) -} + encode(value: ABIValue): Uint8Array { + if (typeof value !== 'object' || Array.isArray(value) || value instanceof Uint8Array || value instanceof Address) { + throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + } -function getTupleValueFromStructValue(structType: ABIStructType, structValue: ABIStructValue): ABIValue[] { - function getTupleValueFromStructFields(structFields: ABIStructField[], values: ABIValue[]): ABIValue[] { - return structFields.map(({ type }, index) => { - // if type is an array of fields, treat as unnamed struct - if (Array.isArray(type)) { - const value = values[index] as ABIStructValue - return getTupleValueFromStructFields(type, Object.values(value)) - } - // if type is struct, treat as struct - if (type.name === ABITypeName.Struct) { - const value = values[index] as ABIStructValue - return getTupleValueFromStructFields(type.structFields, Object.values(value)) - } - return values[index] - }) + const tupleType = this.toABITupleType() + const tupleValue = this.getTupleValueFromStructValue(value) + return tupleType.encode(tupleValue) } - return getTupleValueFromStructFields(structType.structFields, Object.values(structValue)) -} + decode(bytes: Uint8Array): ABIStructValue { + const tupleType = this.toABITupleType() + const tupleValue = tupleType.decode(bytes) + return this.getStructValueFromTupleValue(tupleValue) + } -function getStructValueFromTupleValue(structType: ABIStructType, tupleValue: ABIValue[]): ABIStructValue { - function getStructFieldValues(structFields: ABIStructField[], values: ABIValue[]): ABIStructValue { - return Object.fromEntries( - structFields.map(({ name, type }, index) => { - // When the type is an array of fields, the value must be tuple + private getTupleValueFromStructValue(structValue: ABIStructValue): ABIValue[] { + const getTupleValueFromStructFields = (structFields: ABIStructField[], values: ABIValue[]): ABIValue[] => { + return structFields.map(({ type }, index) => { + // if type is an array of fields, treat as unnamed struct if (Array.isArray(type)) { - const value = values[index] as ABIValue[] - return [name, getStructFieldValues(type, value)] + const value = values[index] as ABIStructValue + return getTupleValueFromStructFields(type, Object.values(value)) } - // When the type is a struct, the value must be tuple - if (type.name === ABITypeName.Struct) { - const value = values[index] as ABIValue[] - return [name, getStructFieldValues(type.structFields, value)] + // if type is struct, treat as struct + if (type instanceof ABIStructType) { + const value = values[index] as ABIStructValue + return getTupleValueFromStructFields(type.structFields, Object.values(value)) } - return [name, values[index]] - }), - ) - } + return values[index] + }) + } - return getStructFieldValues(structType.structFields, tupleValue) -} + return getTupleValueFromStructFields(this.structFields, Object.values(structValue)) + } -// Tuple + private getStructValueFromTupleValue(tupleValue: ABIValue[]): ABIStructValue { + const getStructFieldValues = (structFields: ABIStructField[], values: ABIValue[]): ABIStructValue => { + return Object.fromEntries( + structFields.map(({ name, type }, index) => { + // When the type is an array of fields, the value must be tuple + if (Array.isArray(type)) { + const value = values[index] as ABIValue[] + return [name, getStructFieldValues(type, value)] + } + // When the type is a struct, the value must be tuple + if (type instanceof ABIStructType) { + const value = values[index] as ABIValue[] + return [name, getStructFieldValues(type.structFields, value)] + } + return [name, values[index]] + }), + ) + } -/** - * A tuple of other ABI types. - */ -export type ABITupleType = { - name: ABITypeName.Tuple - childTypes: ABIType[] + return getStructFieldValues(this.structFields, tupleValue) + } } -interface Segment { - left: number - right: number -} +// ============================================================================ +// Helper Functions +// ============================================================================ function compressBools(values: ABIValue[]): number { if (values.length > 8) { @@ -741,6 +924,21 @@ function compressBools(values: ABIValue[]): number { return result } +function findBoolSequenceEnd(abiTypes: ABIType[], currentIndex: number): number { + let cursor = currentIndex + while (cursor < abiTypes.length) { + if (abiTypes[cursor] instanceof ABIBoolType) { + if (cursor - currentIndex + 1 === 8 || cursor === abiTypes.length - 1) { + return cursor + } + cursor++ + } else { + return cursor - 1 + } + } + return cursor - 1 +} + function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { const dynamicSegments: Segment[] = [] const valuePartitions: (Uint8Array | null)[] = [] @@ -750,7 +948,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { while (abiTypesCursor < abiTypes.length) { const childType = abiTypes[abiTypesCursor] - if (isDynamic(childType)) { + if (childType.isDynamic()) { if (bytes.length - bytesCursor < LENGTH_ENCODE_BYTE_SIZE) { throw new Error('DecodingError: Byte array is too short to be decoded') } @@ -769,7 +967,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { valuePartitions.push(null) bytesCursor += LENGTH_ENCODE_BYTE_SIZE } else { - if (childType.name === 'Bool') { + if (childType instanceof ABIBoolType) { const boolSequenceEndIndex = findBoolSequenceEnd(abiTypes, abiTypesCursor) for (let j = 0; j <= boolSequenceEndIndex - abiTypesCursor; j++) { const boolMask = BOOL_TRUE_BYTE >> j @@ -782,7 +980,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { abiTypesCursor = boolSequenceEndIndex bytesCursor += 1 } else { - const childTypeSize = getSize(childType) + const childTypeSize = childType.byteLen() if (bytesCursor + childTypeSize > bytes.length) { throw new Error( `DecodingError: Index out of bounds, trying to access bytes[${bytesCursor}..${bytesCursor + childTypeSize}] but slice has length ${bytes.length}`, @@ -819,7 +1017,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { let segmentIndex = 0 for (let i = 0; i < abiTypes.length; i++) { const childType = abiTypes[i] - if (isDynamic(childType)) { + if (childType.isDynamic()) { valuePartitions[i] = bytes.slice(dynamicSegments[segmentIndex].left, dynamicSegments[segmentIndex].right) segmentIndex += 1 } @@ -837,170 +1035,45 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { return result } -export function encodeTuple(type: ABITupleType, value: ABIValue): Uint8Array { - if (!Array.isArray(value) && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as ${tupleToString(type)}: ${value}`) - } - - const childTypes = type.childTypes - const values = Array.from(value) - - if (childTypes.length !== values.length) { - throw new Error('Encoding Error: Mismatch lengths between the values and types') - } - - const heads: Uint8Array[] = [] - const tails: Uint8Array[] = [] - const isDynamicIndex = new Map() - let abiTypesCursor = 0 - - while (abiTypesCursor < childTypes.length) { - const childType = childTypes[abiTypesCursor] - - if (isDynamic(childType)) { - isDynamicIndex.set(heads.length, true) - heads.push(new Uint8Array(2)) // Placeholder for dynamic offset - tails.push(encodeABIValue(childType, values[abiTypesCursor])) - } else { - if (childType.name === 'Bool') { - const boolSequenceEndIndex = findBoolSequenceEnd(childTypes, abiTypesCursor) - const boolValues = values.slice(abiTypesCursor, boolSequenceEndIndex + 1) - const compressedBool = compressBools(boolValues) - heads.push(new Uint8Array([compressedBool])) - abiTypesCursor = boolSequenceEndIndex - } else { - heads.push(encodeABIValue(childType, values[abiTypesCursor])) - } - isDynamicIndex.set(abiTypesCursor, false) - tails.push(new Uint8Array(0)) - } - abiTypesCursor += 1 - } - - const headLength = heads.reduce((sum, head) => sum + head.length, 0) - let tailLength = 0 - - for (let i = 0; i < heads.length; i++) { - if (isDynamicIndex.get(i)) { - const headValue = headLength + tailLength - if (headValue > 0xffff) { - throw new Error(`Encoding Error: Value ${headValue} cannot fit in u16`) - } - heads[i] = new Uint8Array([(headValue >> 8) & 0xff, headValue & 0xff]) - } - tailLength += tails[i].length +export function parseTupleContent(content: string): string[] { + if (content === '') { + return [] } - const totalLength = heads.reduce((sum, head) => sum + head.length, 0) + tails.reduce((sum, tail) => sum + tail.length, 0) - const result = new Uint8Array(totalLength) - let offset = 0 - - for (const head of heads) { - result.set(head, offset) - offset += head.length + if (content.startsWith(',')) { + throw new Error('Validation Error: the content should not start with comma') } - - for (const tail of tails) { - result.set(tail, offset) - offset += tail.length + if (content.endsWith(',')) { + throw new Error('Validation Error: the content should not end with comma') } - - return result -} - -function decodeTuple(type: ABITupleType, bytes: Uint8Array): ABIValue[] { - const childTypes = type.childTypes - const valuePartitions = extractValues(childTypes, bytes) - const values: ABIValue[] = [] - - for (let i = 0; i < childTypes.length; i++) { - const childType = childTypes[i] - const valuePartition = valuePartitions[i] - const childValue = decodeABIValue(childType, valuePartition) - values.push(childValue) + if (content.includes(',,')) { + throw new Error('Validation Error: the content should not have consecutive commas') } - return values -} + const tupleStrings: string[] = [] + let depth = 0 + let word = '' -function tupleToString(type: ABITupleType): string { - const typeStrings: string[] = [] - for (let i = 0; i < type.childTypes.length; i++) { - typeStrings[i] = getABITypeName(type.childTypes[i]) + for (const ch of content) { + word += ch + if (ch === '(') { + depth += 1 + } else if (ch === ')') { + depth -= 1 + } else if (ch === ',' && depth === 0) { + word = word.slice(0, -1) // Remove the comma + tupleStrings.push(word) + word = '' + } } - return `(${typeStrings.join(',')})` -} -function isDynamic(type: ABIType): boolean { - switch (type.name) { - case 'StaticArray': - return isDynamic(type.childType) - case 'Tuple': - return type.childTypes.some((c) => isDynamic(c)) - case 'DynamicArray': - case 'String': - return true - default: - return false + if (word !== '') { + tupleStrings.push(word) } -} -function findBoolSequenceEnd(abiTypes: ABIType[], currentIndex: number): number { - let cursor = currentIndex - while (cursor < abiTypes.length) { - if (abiTypes[cursor].name === 'Bool') { - if (cursor - currentIndex + 1 === 8 || cursor === abiTypes.length - 1) { - return cursor - } - cursor++ - } else { - return cursor - 1 - } + if (depth !== 0) { + throw new Error('Validation Error: the content has mismatched parentheses') } - return cursor - 1 -} -function getSize(abiType: ABIType): number { - switch (abiType.name) { - case ABITypeName.Uint: - return Math.floor(abiType.bitSize / 8) - case ABITypeName.Ufixed: - return Math.floor(abiType.bitSize / 8) - case ABITypeName.Address: - return PUBLIC_KEY_BYTE_LENGTH - case ABITypeName.Bool: - return 1 - case ABITypeName.Byte: - return 1 - case ABITypeName.StaticArray: - if (abiType.childType.name === 'Bool') { - return Math.ceil(abiType.length / 8) - } - return getSize(abiType.childType) * abiType.length - case ABITypeName.Tuple: { - let size = 0 - let i = 0 - while (i < abiType.childTypes.length) { - const childType = abiType.childTypes[i] - if (childType.name === 'Bool') { - const sequenceEndIndex = findBoolSequenceEnd(abiType.childTypes, i) - const boolCount = sequenceEndIndex - i + 1 - size += Math.ceil(boolCount / 8) - i = sequenceEndIndex + 1 - } else { - size += getSize(childType) - i++ - } - } - return size - } - case ABITypeName.Struct: { - const tupleType = getABITupleTypeFromABIStructType(abiType) - return getSize(tupleType) - } - case ABITypeName.String: - throw new Error(`Validation Error: Failed to get size, string is a dynamic type`) - case ABITypeName.DynamicArray: - throw new Error(`Validation Error: Failed to get size, dynamic array is a dynamic type`) - } + return tupleStrings } diff --git a/packages/abi/src/arc56-contract.ts b/packages/abi/src/arc56-contract.ts index 2704187d0..6dcb38f83 100644 --- a/packages/abi/src/arc56-contract.ts +++ b/packages/abi/src/arc56-contract.ts @@ -2,7 +2,7 @@ /** ARC-56 spec */ /****************/ -import { ABIType, getABIStructType, getABIType } from './abi-type' +import { ABIStructType, ABIType } from './abi-type' /** Describes a single key in app storage with parsed ABI types */ export type ABIStorageKey = { @@ -323,12 +323,12 @@ function resolveStorageType(typeStr: string, structs: Record { describe('abi return', () => { // eslint-disable-next-line @typescript-eslint/no-explicit-any const encodeThenDecodeValue = (type: string, value: any) => { - const abiType = getABIType(type) - const encoded = encodeABIValue(abiType, value) - return decodeABIValue(abiType, encoded) + const abiType = ABIType.from(type) + const encoded = abiType.encode(value) + return abiType.decode(encoded) } test('uint32', () => { diff --git a/src/transactions/method-call.ts b/src/transactions/method-call.ts index bc1c9c884..547ed2964 100644 --- a/src/transactions/method-call.ts +++ b/src/transactions/method-call.ts @@ -1,12 +1,12 @@ import { ABIMethod, ABIReferenceType, + ABITupleType, ABIType, - ABITypeName, + ABIUintType, ABIValue, argTypeIsReference, argTypeIsTransaction, - encodeABIValue, getABIMethodSelector, } from '@algorandfoundation/algokit-abi' import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' @@ -347,7 +347,7 @@ function encodeMethodArguments( assetReferences, ) - abiTypes.push({ name: ABITypeName.Uint, bitSize: 8 }) + abiTypes.push(new ABIUintType(8)) abiValues.push(foreignIndex) } else { throw new Error(`Invalid reference value for ${referenceType}: ${argValue}`) @@ -386,7 +386,7 @@ function encodeArgsIndividually(abiTypes: ABIType[], abiValues: ABIValue[]): Uin for (let i = 0; i < abiTypes.length; i++) { const abiType = abiTypes[i] const abiValue = abiValues[i] - const encoded = encodeABIValue(abiType, abiValue) + const encoded = abiType.encode(abiValue) encodedArgs.push(encoded) } @@ -409,9 +409,9 @@ function encodeArgsWithTuplePacking(abiTypes: ABIType[], abiValues: ABIValue[]): const remainingAbiValues = abiValues.slice(ARGS_TUPLE_PACKING_THRESHOLD) if (remainingAbiTypes.length > 0) { - const tupleType = { name: ABITypeName.Tuple as const, childTypes: remainingAbiTypes } + const tupleType = new ABITupleType(remainingAbiTypes) const tupleValue = remainingAbiValues - const tupleEncoded = encodeABIValue(tupleType, tupleValue) + const tupleEncoded = tupleType.encode(tupleValue) encodedArgs.push(tupleEncoded) } diff --git a/src/types/app-client.spec.ts b/src/types/app-client.spec.ts index 6a9842ea8..c7a85f546 100644 --- a/src/types/app-client.spec.ts +++ b/src/types/app-client.spec.ts @@ -1,12 +1,4 @@ -import { - ABIValue, - decodeABIValue, - encodeABIValue, - findABIMethod, - getABIMethod, - getABIStructType, - getABIType, -} from '@algorandfoundation/algokit-abi' +import { ABIStructType, ABIType, ABIValue, findABIMethod, getABIMethod } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' @@ -626,11 +618,11 @@ describe('app-client', () => { const expectedValue = 1234524352 await client.send.call({ method: 'set_box', - args: [boxName1, encodeABIValue(getABIType('uint32'), expectedValue)], + args: [boxName1, ABIType.from('uint32').encode(expectedValue)], boxReferences: [boxName1], }) - const boxes = await client.getBoxValuesFromABIType(getABIType('uint32'), (n) => n.nameBase64 === boxName1Base64) - const box1AbiValue = await client.getBoxValueFromABIType(boxName1, getABIType('uint32')) + const boxes = await client.getBoxValuesFromABIType(ABIType.from('uint32'), (n) => n.nameBase64 === boxName1Base64) + const box1AbiValue = await client.getBoxValueFromABIType(boxName1, ABIType.from('uint32')) expect(boxes.length).toBe(1) const [value] = boxes expect(Number(value.value)).toBe(expectedValue) @@ -798,14 +790,14 @@ describe('app-client', () => { describe('getABIDecodedValue', () => { test('correctly decodes a struct containing a uint16', () => { - const structType = getABIStructType('User', { + const structType = ABIStructType.fromStruct('User', { User: [ { name: 'userId', type: 'uint16' }, { name: 'name', type: 'string' }, ], }) - const decoded = decodeABIValue(structType, new Uint8Array([0, 1, 0, 4, 0, 5, 119, 111, 114, 108, 100])) as { + const decoded = structType.decode(new Uint8Array([0, 1, 0, 4, 0, 5, 119, 111, 114, 108, 100])) as { userId: number name: string } @@ -820,8 +812,9 @@ describe('app-client', () => { // Generate all valid ABI uint bit lengths Array.from({ length: 64 }, (_, i) => (i + 1) * 8), )('correctly decodes a uint%i', (bitLength) => { - const encoded = encodeABIValue(getABIType(`uint${bitLength}`), 1) - const decoded = decodeABIValue(getABIType(`uint${bitLength}`), encoded) + const abiType = ABIType.from(`uint${bitLength}`) + const encoded = abiType.encode(1) + const decoded = abiType.decode(encoded) if (bitLength < 53) { expect(typeof decoded).toBe('number') diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index dc52bafc7..ee5b34f3f 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -1,4 +1,4 @@ -import { ABIValue, Arc56Contract, encodeABIValue, findABIMethod, getABIType } from '@algorandfoundation/algokit-abi' +import { ABIType, ABIValue, Arc56Contract, findABIMethod } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { Address, TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' @@ -716,11 +716,11 @@ describe('ARC32: app-factory-and-app-client', () => { const expectedValue = 1234524352 await client.send.call({ method: 'set_box', - args: [boxName1, encodeABIValue(getABIType('uint32'), expectedValue)], + args: [boxName1, ABIType.from('uint32').encode(expectedValue)], boxReferences: [boxName1], }) - const boxes = await client.getBoxValuesFromABIType(getABIType('uint32'), (n) => n.nameBase64 === boxName1Base64) - const box1AbiValue = await client.getBoxValueFromABIType(boxName1, getABIType('uint32')) + const boxes = await client.getBoxValuesFromABIType(ABIType.from('uint32'), (n) => n.nameBase64 === boxName1Base64) + const box1AbiValue = await client.getBoxValueFromABIType(boxName1, ABIType.from('uint32')) expect(boxes.length).toBe(1) const [value] = boxes expect(Number(value.value)).toBe(expectedValue) diff --git a/src/types/app-manager.ts b/src/types/app-manager.ts index 71eedee62..a23f794b0 100644 --- a/src/types/app-manager.ts +++ b/src/types/app-manager.ts @@ -1,4 +1,4 @@ -import { ABIMethod, ABIReturn, ABIType, ABIValue, decodeABIValue } from '@algorandfoundation/algokit-abi' +import { ABIMethod, ABIReturn, ABIType, ABIValue } from '@algorandfoundation/algokit-abi' import { AlgodClient, EvalDelta, PendingTransactionResponse, TealValue } from '@algorandfoundation/algokit-algod-client' import { ReadableAddress, getAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner, BoxReference as TransactionBoxReference } from '@algorandfoundation/algokit-transact' @@ -331,7 +331,7 @@ export class AppManager { public async getBoxValueFromABIType(request: BoxValueRequestParams): Promise { const { appId, boxName, type } = request const value = await this.getBoxValue(appId, boxName) - return decodeABIValue(type, value) + return type.decode(value) } /** @@ -449,7 +449,7 @@ export class AppManager { method: method, rawReturnValue, decodeError: undefined, - returnValue: decodeABIValue(method.returns.type, rawReturnValue), + returnValue: method.returns.type.decode(rawReturnValue), } } catch (err) { return { diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index b7e51c606..2dbe77b0b 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -1,12 +1,11 @@ import { ABIMethod, + ABIType as ABITypeClass, ARC28Event, Arc56Contract, Arc56Method, StorageKey, StructField, - encodeABIValue, - getABIType, } from '@algorandfoundation/algokit-abi' /** @@ -59,7 +58,7 @@ export function arc32ToArc56(appSpec: AppSpec): Arc56Contract { return { source: defaultArg.source === 'constant' ? 'literal' : defaultArg.source === 'global-state' ? 'global' : 'local', data: Buffer.from( - typeof defaultArg.data === 'number' ? encodeABIValue(getABIType('uint64'), defaultArg.data) : defaultArg.data, + typeof defaultArg.data === 'number' ? ABITypeClass.from('uint64').encode(defaultArg.data) : defaultArg.data, ).toString('base64'), type: type === 'string' ? 'AVMString' : type, } From ce81b10f24f152bc4e7664e73368871dd1729967 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Wed, 26 Nov 2025 16:12:00 +1000 Subject: [PATCH 23/43] put processMethodCallReturn back --- src/types/app-client.ts | 54 +++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/src/types/app-client.ts b/src/types/app-client.ts index 73add65ad..f0eee45b8 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -30,6 +30,7 @@ import { AlgoAmount } from './amount' import { ABIAppCallArgs, AppCompilationResult, + AppReturn, AppState, AppStorageSchema, BoxName, @@ -37,6 +38,7 @@ import { OnSchemaBreak, OnUpdate, RawAppCallArgs, + SendAppTransactionResult, TealTemplateParams, } from './app' import { AppLookup } from './app-deployer' @@ -861,6 +863,24 @@ export class AppClient { return findABIMethod(methodNameOrSignature, this._appSpec) } + /** + * Checks for decode errors on the SendAppTransactionResult and maps the return value to the specified type + * on the ARC-56 method, replacing the `return` property with the decoded type. + * + * If the return type is an ARC-56 struct then the struct will be returned. + * + * @param result The SendAppTransactionResult to be mapped + * @param method The method that was called + * @returns The smart contract response with an updated return value + */ + public async processMethodCallReturn< + TReturn extends ABIValue | undefined, + TResult extends SendAppTransactionResult = SendAppTransactionResult, + >(result: Promise | TResult): Promise & AppReturn> { + const resultValue = await result + return { ...resultValue, return: resultValue.return?.returnValue as TReturn } + } + /** * Compiles the approval and clear state programs (if TEAL templates provided), * performing any provided deploy-time parameter replacement and stores @@ -1271,10 +1291,8 @@ export class AppClient { */ update: async (params: AppClientMethodCallParams & AppClientCompilationParams & SendParams) => { const compiled = await this.compile(params) - const sendTransactionResult = await this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })) return { - ...sendTransactionResult, - return: sendTransactionResult.return?.returnValue, + ...(await this.processMethodCallReturn(this._algorand.send.appUpdateMethodCall(await this.params.update({ ...params })))), ...(compiled as Partial), } }, @@ -1284,11 +1302,7 @@ export class AppClient { * @returns The result of sending the opt-in ABI method call */ optIn: async (params: AppClientMethodCallParams & SendParams) => { - const sendTransactionResult = await this._algorand.send.appCallMethodCall(await this.params.optIn(params)) - return { - ...sendTransactionResult, - return: sendTransactionResult.return?.returnValue, - } + return this.processMethodCallReturn(this._algorand.send.appCallMethodCall(await this.params.optIn(params))) }, /** * Sign and send transactions for a delete ABI call @@ -1296,11 +1310,7 @@ export class AppClient { * @returns The result of sending the delete ABI method call */ delete: async (params: AppClientMethodCallParams & SendParams) => { - const sendTransactionResult = await this._algorand.send.appDeleteMethodCall(await this.params.delete(params)) - return { - ...sendTransactionResult, - return: sendTransactionResult.return?.returnValue, - } + return this.processMethodCallReturn(this._algorand.send.appDeleteMethodCall(await this.params.delete(params))) }, /** * Sign and send transactions for a close out ABI call @@ -1308,11 +1318,7 @@ export class AppClient { * @returns The result of sending the close out ABI method call */ closeOut: async (params: AppClientMethodCallParams & SendParams) => { - const sendTransactionResult = await this._algorand.send.appCallMethodCall(await this.params.closeOut(params)) - return { - ...sendTransactionResult, - return: sendTransactionResult.return?.returnValue, - } + return this.processMethodCallReturn(this._algorand.send.appCallMethodCall(await this.params.closeOut(params))) }, /** * Sign and send transactions for a call (defaults to no-op) @@ -1350,12 +1356,12 @@ export class AppClient { // Simulate calls for a readonly method can use the max opcode budget extraOpcodeBudget: MAX_SIMULATE_OPCODE_BUDGET, }) - return { + return this.processMethodCallReturn({ ...result, transaction: result.transactions.at(-1)!, confirmation: result.confirmations.at(-1)!, - return: result.returns && result.returns.length > 0 ? result.returns.at(-1)!.returnValue : undefined, - } + return: result.returns && result.returns.length > 0 ? result.returns.at(-1)! : undefined, + }) } catch (e) { const error = e as Error // For read-only calls with max opcode budget, fee issues should be rare @@ -1366,11 +1372,7 @@ export class AppClient { throw e } } - const result = await this._algorand.send.appCallMethodCall(await this.params.call(params)) - return { - ...result, - return: result.return?.returnValue, - } + return this.processMethodCallReturn(this._algorand.send.appCallMethodCall(await this.params.call(params))) }, } } From f7d2b284b1d05304ad0ab354819e979a6be6aec4 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Thu, 27 Nov 2025 13:27:14 +1000 Subject: [PATCH 24/43] add todo --- src/types/composer.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/types/composer.ts b/src/types/composer.ts index 1d1e4a5f7..9c7300c44 100644 --- a/src/types/composer.ts +++ b/src/types/composer.ts @@ -1910,6 +1910,7 @@ export class TransactionComposer { } if (simulateResponse && simulateResponse.txnGroups[0].failedAt) { + // TODO: PD - this version doesn't write the trace into a file for (const txn of simulateResponse.txnGroups[0].txnResults) { err.traces.push({ trace: AlgorandSerializer.encode(txn.execTrace, SimulationTransactionExecTraceMeta, 'map'), From 74807f200bbea6730d310a804a012a69e51dede2 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Thu, 27 Nov 2025 15:05:50 +1000 Subject: [PATCH 25/43] wip - addressing TODO --- MIGRATION-NOTES.md | 5 ++-- packages/abi/src/abi-method.ts | 1 - packages/abi/src/abi-type.spec.ts | 24 +++++++++---------- packages/abi/src/abi-type.ts | 12 +++++----- packages/abi/src/index.ts | 4 ++-- src/types/app-factory-and-client.spec.ts | 20 +++++----------- src/types/app-manager.ts | 3 +-- src/types/app-spec.ts | 1 - .../client/TestContractClient.ts | 22 +++-------------- 9 files changed, 32 insertions(+), 60 deletions(-) diff --git a/MIGRATION-NOTES.md b/MIGRATION-NOTES.md index c0a59dd0b..78f779781 100644 --- a/MIGRATION-NOTES.md +++ b/MIGRATION-NOTES.md @@ -36,11 +36,8 @@ A collection of random notes pop up during the migration process. - ABI - ABIStruct can't be constructed from string. - Bring the unhappy path tests over (fail to encode/decode) - - TODO: PD - revert this: the names are ABIStaticArrayType and ABIDynamicArrayType (not ABIArrayStaticType and ABIArrayDynamicType) - ABIResult vs ABIReturn - TestContractClient was updated - - TODO: PD - confirm Converts `bigint`'s for Uint's < 64 to `number` for easier use. - - TODO: PD - look into convertAbiByteArrays - TODO: PD - support txnCount for ABIMethod - Remove `ABIMethodParams` - Make sure that the python utils also sort resources during resource population @@ -50,3 +47,5 @@ A collection of random notes pop up during the migration process. - call `build` -> resource population into transactions with signers -> simulate will use the transactions with signers - review the names of SignedTransactionWrapper - TODO: re-export transact under utils/transact folder +- integration: + - need to remove `decodeReturnValue` from the client generator diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 6d6bf7781..b2a1caff2 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -25,7 +25,6 @@ export type ABIMethodArg = { type: ABIMethodArgType name?: string desciption?: string - // TODO: PD - implement default value defaultValue?: ABIDefaultValue } diff --git a/packages/abi/src/abi-type.spec.ts b/packages/abi/src/abi-type.spec.ts index d1163d297..41668ba57 100644 --- a/packages/abi/src/abi-type.spec.ts +++ b/packages/abi/src/abi-type.spec.ts @@ -2,10 +2,10 @@ import { Address } from '@algorandfoundation/algokit-common' import { describe, expect, test } from 'vitest' import { ABIAddressType, + ABIArrayDynamicType, + ABIArrayStaticType, ABIBoolType, ABIByteType, - ABIDynamicArrayType, - ABIStaticArrayType, ABIStringType, ABIStructType, ABITupleType, @@ -113,31 +113,31 @@ describe('ABIType encode decode', () => { // Static array tests { description: 'bool[3] array', - abiType: new ABIStaticArrayType(new ABIBoolType(), 3), + abiType: new ABIArrayStaticType(new ABIBoolType(), 3), abiValue: [true, true, false], expectedBytes: [192], }, { description: 'bool[8] array with 01000000', - abiType: new ABIStaticArrayType(new ABIBoolType(), 8), + abiType: new ABIArrayStaticType(new ABIBoolType(), 8), abiValue: [false, true, false, false, false, false, false, false], expectedBytes: [64], }, { description: 'bool[8] array with all true', - abiType: new ABIStaticArrayType(new ABIBoolType(), 8), + abiType: new ABIArrayStaticType(new ABIBoolType(), 8), abiValue: [true, true, true, true, true, true, true, true], expectedBytes: [255], }, { description: 'bool[9] array', - abiType: new ABIStaticArrayType(new ABIBoolType(), 9), + abiType: new ABIArrayStaticType(new ABIBoolType(), 9), abiValue: [true, false, false, true, false, false, true, false, true], expectedBytes: [146, 128], }, { description: 'uint64[3] array', - abiType: new ABIStaticArrayType(new ABIUintType(64), 3), + abiType: new ABIArrayStaticType(new ABIUintType(64), 3), abiValue: [1n, 2n, 3n], expectedBytes: [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3], }, @@ -145,25 +145,25 @@ describe('ABIType encode decode', () => { // Dynamic array tests { description: 'empty bool[] array', - abiType: new ABIDynamicArrayType(new ABIBoolType()), + abiType: new ABIArrayDynamicType(new ABIBoolType()), abiValue: [], expectedBytes: [0, 0], }, { description: 'bool[] array with 3 elements', - abiType: new ABIDynamicArrayType(new ABIBoolType()), + abiType: new ABIArrayDynamicType(new ABIBoolType()), abiValue: [true, true, false], expectedBytes: [0, 3, 192], }, { description: 'bool[] array with 8 elements', - abiType: new ABIDynamicArrayType(new ABIBoolType()), + abiType: new ABIArrayDynamicType(new ABIBoolType()), abiValue: [false, true, false, false, false, false, false, false], expectedBytes: [0, 8, 64], }, { description: 'bool[] array with 9 elements', - abiType: new ABIDynamicArrayType(new ABIBoolType()), + abiType: new ABIArrayDynamicType(new ABIBoolType()), abiValue: [true, false, false, true, false, false, true, false, true], expectedBytes: [0, 9, 146, 128], }, @@ -341,7 +341,7 @@ describe('ABIType encode decode', () => { }, { name: 'Struct 2 field 3', - type: new ABIDynamicArrayType(new ABIStringType()), + type: new ABIArrayDynamicType(new ABIStringType()), }, ]), }, diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index cf6abb396..537d55abf 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -99,7 +99,7 @@ export abstract class ABIType { static from(str: string): ABIType { if (str.endsWith('[]')) { const childType = ABIType.from(str.slice(0, str.length - 2)) - return new ABIDynamicArrayType(childType) + return new ABIArrayDynamicType(childType) } if (str.endsWith(']')) { const stringMatches = str.match(STATIC_ARRAY_REGEX) @@ -112,7 +112,7 @@ export abstract class ABIType { throw new Error(`Validation Error: array length exceeds limit ${MAX_LEN}`) } const childType = ABIType.from(stringMatches[1]) - return new ABIStaticArrayType(childType, arrayLength) + return new ABIArrayStaticType(childType, arrayLength) } if (str.startsWith('uint')) { const digitsOnly = (s: string) => [...s].every((c) => '0123456789'.includes(c)) @@ -604,7 +604,7 @@ export class ABITupleType extends ABIType { /** * A static-length array ABI type. */ -export class ABIStaticArrayType extends ABIType { +export class ABIArrayStaticType extends ABIType { readonly name = ABITypeName.StaticArray /** @@ -627,7 +627,7 @@ export class ABIStaticArrayType extends ABIType { } equals(other: ABIType): boolean { - return other instanceof ABIStaticArrayType && this.childType.equals(other.childType) && this.length === other.length + return other instanceof ABIArrayStaticType && this.childType.equals(other.childType) && this.length === other.length } isDynamic(): boolean { @@ -676,7 +676,7 @@ export class ABIStaticArrayType extends ABIType { /** * A dynamic-length array ABI type. */ -export class ABIDynamicArrayType extends ABIType { +export class ABIArrayDynamicType extends ABIType { readonly name = ABITypeName.DynamicArray /** @@ -692,7 +692,7 @@ export class ABIDynamicArrayType extends ABIType { } equals(other: ABIType): boolean { - return other instanceof ABIDynamicArrayType && this.childType.equals(other.childType) + return other instanceof ABIArrayDynamicType && this.childType.equals(other.childType) } isDynamic(): boolean { diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index a565e2a2c..076019035 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -14,10 +14,10 @@ export { export type { ABIMethod, ABIReferenceType, ABIReturn } from './abi-method' export { ABIAddressType, + ABIArrayDynamicType, + ABIArrayStaticType, ABIBoolType, ABIByteType, - ABIDynamicArrayType, - ABIStaticArrayType, ABIStringType, ABIStructType, ABITupleType, diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index ee5b34f3f..4dcc61b9f 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -791,32 +791,28 @@ describe('ARC56: app-factory-and-app-client', () => { await localnet.newScope() factory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this - appSpec: arc56Json, + appSpec: arc56Json as Arc56Contract, defaultSender: localnet.context.testAccount.addr, }) }, 10_000) test('ARC56 error messages from inner app error', async () => { const innerFactory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this - appSpec: errorInnerAppArc56Json, + appSpec: errorInnerAppArc56Json as Arc56Contract, defaultSender: localnet.context.testAccount.addr, }) const { appClient: innerClient } = await innerFactory.deploy({ createParams: { method: 'createApplication' } }) const middleFactory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this - appSpec: errorMiddleAppArc56Json, + appSpec: errorMiddleAppArc56Json as Arc56Contract, defaultSender: localnet.context.testAccount.addr, }) const { appClient: middleClient } = await middleFactory.deploy({ createParams: { method: 'createApplication' } }) const outerFactory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this - appSpec: errorOuterAppArc56Json, + appSpec: errorOuterAppArc56Json as Arc56Contract, defaultSender: localnet.context.testAccount.addr, }) @@ -829,8 +825,7 @@ describe('ARC56: app-factory-and-app-client', () => { test('ARC56 error message on deploy', async () => { const deployErrorFactory = localnet.algorand.client.getAppFactory({ - // @ts-expect-error TODO: Fix this - appSpec: deployErrorAppArc56Json, + appSpec: deployErrorAppArc56Json as Arc56Contract, defaultSender: localnet.context.testAccount.addr, }) @@ -892,12 +887,9 @@ describe('ARC56: app-factory-and-app-client', () => { const appClient = localnet.algorand.client.getAppClientById({ appId, defaultSender: localnet.context.testAccount.addr, - // @ts-expect-error TODO: Fix this - appSpec: arc56Json, + appSpec: arc56Json as Arc56Contract, }) - // TODO: PD - investigate Fix this - try { await appClient.send.call({ method: 'tmpl' }) throw Error('should not get here') diff --git a/src/types/app-manager.ts b/src/types/app-manager.ts index a23f794b0..38b153acd 100644 --- a/src/types/app-manager.ts +++ b/src/types/app-manager.ts @@ -428,8 +428,7 @@ export class AppManager { * const returnValue = AppManager.getABIReturn(confirmation, ABIMethod.fromSignature('hello(string)void')); * ``` */ - public static getABIReturn(confirmation: PendingTransactionResponse | undefined, method: ABIMethod | undefined): ABIReturn | undefined { - // TODO: PD - can we make confirmation non-nullable + public static getABIReturn(confirmation: PendingTransactionResponse, method: ABIMethod | undefined): ABIReturn | undefined { if (!method || !confirmation || method.returns.type === 'void') { return undefined } diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index 2dbe77b0b..c6751d93e 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -151,7 +151,6 @@ export function arc32ToArc56(appSpec: AppSpec): Arc56Contract { } satisfies Arc56Contract } -// TODO: PD - confirm this logic function getABIMethodParamsSignature(params: ABIMethodParams) { const args = params.args.map((a) => a.type).join(',') const returns = params.returns.type === 'void' ? '' : params.returns.type diff --git a/tests/example-contracts/client/TestContractClient.ts b/tests/example-contracts/client/TestContractClient.ts index 6df8dac65..60b5d39b0 100644 --- a/tests/example-contracts/client/TestContractClient.ts +++ b/tests/example-contracts/client/TestContractClient.ts @@ -4,7 +4,7 @@ * DO NOT MODIFY IT BY HAND. * requires: @algorandfoundation/algokit-utils: ^7 */ -import { ABIReturn, Arc56Contract } from '@algorandfoundation/algokit-abi' +import { Arc56Contract } from '@algorandfoundation/algokit-abi' import { SimulateTransaction } from '@algorandfoundation/algokit-algod-client' import { OnApplicationComplete, Transaction } from '@algorandfoundation/algokit-transact' import { TransactionSigner } from '@algorandfoundation/sdk' @@ -674,15 +674,6 @@ export class TestContractClient { }) } - /** - * Checks for decode errors on the given return value and maps the return value to the return type for the given method - * @returns The typed return value or undefined if there was no value - */ - decodeReturnValue(method: TSignature, returnValue: ABIReturn | undefined) { - // TODO: PD - do we need to keep this? - return returnValue - } - /** * Returns a new `TestContractClient` client, resolving the app by creator address and name * using AlgoKit app deployment semantics (i.e. looking for the app creation transaction note). @@ -1062,7 +1053,6 @@ export class TestContractClient { const client = this const composer = this.algorand.newGroup() let promiseChain: Promise = Promise.resolve() - const resultMappers: Array any)> = [] return { /** * Add a doMath(uint64,uint64,string)uint64 method call against the TestContract contract @@ -1073,7 +1063,6 @@ export class TestContractClient { > & { onComplete?: OnApplicationComplete.NoOp }, ) { promiseChain = promiseChain.then(async () => composer.addAppCallMethodCall(await client.params.doMath(params))) - resultMappers.push((v) => client.decodeReturnValue('doMath(uint64,uint64,string)uint64', v)) return this }, /** @@ -1085,7 +1074,6 @@ export class TestContractClient { }, ) { promiseChain = promiseChain.then(async () => composer.addAppCallMethodCall(await client.params.txnArg(params))) - resultMappers.push((v) => client.decodeReturnValue('txnArg(pay)address', v)) return this }, /** @@ -1097,7 +1085,6 @@ export class TestContractClient { }, ) { promiseChain = promiseChain.then(async () => composer.addAppCallMethodCall(await client.params.helloWorld(params))) - resultMappers.push((v) => client.decodeReturnValue('helloWorld()string', v)) return this }, /** @@ -1109,7 +1096,6 @@ export class TestContractClient { }, ) { promiseChain = promiseChain.then(async () => composer.addAppCallMethodCall(await client.params.methodArg(params))) - resultMappers.push((v) => client.decodeReturnValue('methodArg(appl)uint64', v)) return this }, /** @@ -1121,7 +1107,6 @@ export class TestContractClient { > & { onComplete?: OnApplicationComplete.NoOp }, ) { promiseChain = promiseChain.then(async () => composer.addAppCallMethodCall(await client.params.nestedTxnArg(params))) - resultMappers.push((v) => client.decodeReturnValue('nestedTxnArg(pay,appl)uint64', v)) return this }, /** @@ -1134,7 +1119,6 @@ export class TestContractClient { > & { onComplete?: OnApplicationComplete.NoOp }, ) { promiseChain = promiseChain.then(async () => composer.addAppCallMethodCall(await client.params.doubleNestedTxnArg(params))) - resultMappers.push((v) => client.decodeReturnValue('doubleNestedTxnArg(pay,appl,pay,appl)uint64', v)) return this }, /** @@ -1157,7 +1141,7 @@ export class TestContractClient { const result = await (!options ? composer.simulate() : composer.simulate(options)) return { ...result, - returns: result.returns?.map((val, i) => (resultMappers[i] !== undefined ? resultMappers[i]!(val) : val.returnValue)), + returns: result.returns?.map((val) => val.returnValue), } }, async send(params?: SendParams) { @@ -1165,7 +1149,7 @@ export class TestContractClient { const result = await composer.send(params) return { ...result, - returns: result.returns?.map((val, i) => (resultMappers[i] !== undefined ? resultMappers[i]!(val) : val.returnValue)), + returns: result.returns?.map((val) => val.returnValue), } }, } as unknown as TestContractComposer From 780140a18d95747659f2f0a488898c17c1f00703 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 10:58:55 +1000 Subject: [PATCH 26/43] improve default value handling --- packages/abi/src/abi-method.ts | 15 +++-- packages/abi/src/index.ts | 12 +++- src/types/app-client.ts | 107 ++++++++++++++++++++------------- src/types/app-factory.ts | 24 ++++---- 4 files changed, 98 insertions(+), 60 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index b2a1caff2..ba8e5706d 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -1,5 +1,5 @@ import sha512 from 'js-sha512' -import { ABIStructType, ABIType, parseTupleContent } from './abi-type' +import { ABIAddressType, ABIStructType, ABIType, ABIUintType, parseTupleContent } from './abi-type' import { ABIValue } from './abi-value' import { ARC28Event } from './arc28-event' import { AVMType, Arc56Contract, Arc56Method } from './arc56-contract' @@ -312,10 +312,17 @@ export function isAVMType(type: unknown): type is AVMType { return typeof type === 'string' && (type === 'AVMString' || type === 'AVMBytes' || type === 'AVMUint64') } -export function decodeAVMOrABIValue(type: AVMType | ABIType, bytes: Uint8Array): ABIValue { - return isAVMType(type) ? decodeAVMValue(type, bytes) : type.decode(bytes) +export function getABIDecodedValue(type: AVMType | ABIType | ABIReferenceType, bytes: Uint8Array): ABIValue { + if (type === ABIReferenceType.Asset || type === ABIReferenceType.Application) { + return new ABIUintType(64).decode(bytes) + } else if (type === ABIReferenceType.Account) { + return new ABIAddressType().decode(bytes) + } else if (isAVMType(type)) { + return decodeAVMValue(type, bytes) + } + return type.decode(bytes) } -export function encodeAVMOrABIValue(type: AVMType | ABIType, value: ABIValue): Uint8Array { +export function getABIEncodedValue(type: AVMType | ABIType, value: ABIValue): Uint8Array { return isAVMType(type) ? encodeAVMValue(type, value) : type.encode(value) } diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index 076019035..b1ff2e284 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -2,16 +2,16 @@ export { argTypeIsAbiType, argTypeIsReference, argTypeIsTransaction, - decodeAVMOrABIValue, decodeAVMValue, - encodeAVMOrABIValue, findABIMethod, + getABIDecodedValue, + getABIEncodedValue, getABIMethod, getABIMethodSelector, getABIMethodSignature, isAVMType, } from './abi-method' -export type { ABIMethod, ABIReferenceType, ABIReturn } from './abi-method' +export type { ABIDefaultValue, ABIMethod, ABIReferenceType, ABIReturn } from './abi-method' export { ABIAddressType, ABIArrayDynamicType, @@ -32,10 +32,16 @@ export type { ABIReferenceValue, ABIValue } from './abi-value' export type { ARC28Event } from './arc28-event' export { getBoxABIStorageKey, + getBoxABIStorageKeys, getBoxABIStorageMap, + getBoxABIStorageMaps, + getGlobalABIStorageKey, getGlobalABIStorageKeys, + getGlobalABIStorageMap, getGlobalABIStorageMaps, + getLocalABIStorageKey, getLocalABIStorageKeys, + getLocalABIStorageMap, getLocalABIStorageMaps, } from './arc56-contract' export type { diff --git a/src/types/app-client.ts b/src/types/app-client.ts index f0eee45b8..7c3b5bb05 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -1,16 +1,17 @@ import { + ABIDefaultValue, ABIStorageKey, ABIStorageMap, ABIType, ABIValue, Arc56Contract, ProgramSourceInfo, - argTypeIsAbiType, argTypeIsTransaction, - decodeAVMOrABIValue, - encodeAVMOrABIValue, findABIMethod, + getABIDecodedValue, + getABIEncodedValue, getBoxABIStorageKey, + getBoxABIStorageKeys, getBoxABIStorageMap, getGlobalABIStorageKeys, getGlobalABIStorageMaps, @@ -433,7 +434,7 @@ export class AppClient { private _approvalSourceMap: ProgramSourceMap | undefined private _clearSourceMap: ProgramSourceMap | undefined - private _localStateMethods: (address: string | Address) => ReturnType + private _localStateMethods: (address: ReadableAddress) => ReturnType private _globalStateMethods: ReturnType private _boxStateMethods: ReturnType @@ -473,7 +474,7 @@ export class AppClient { this._approvalSourceMap = params.approvalSourceMap this._clearSourceMap = params.clearSourceMap - this._localStateMethods = (address: string | Address) => + this._localStateMethods = (address: ReadableAddress) => this.getStateMethods( () => this.getLocalState(address), () => getLocalABIStorageKeys(this._appSpec), @@ -1060,23 +1061,24 @@ export class AppClient { ): Promise['args']> { const m = findABIMethod(methodNameOrSignature, this._appSpec) return await Promise.all( - args?.map(async (a, i) => { - const arg = m.args[i] - if (!arg) { + args?.map(async (arg, i) => { + const methodArg = m.args[i] + if (!methodArg) { throw new Error(`Unexpected arg at position ${i}. ${m.name} only expects ${m.args.length} args`) } - if (a !== undefined) { - return a + if (argTypeIsTransaction(methodArg.type)) { + return arg } - const defaultValue = arg.defaultValue - // TODO: PD - the existing logic seems to only handle default value for ABI types - // Confirm that we don't need to do it for reference types - if (defaultValue && argTypeIsAbiType(arg.type)) { + if (arg !== undefined) { + return arg + } + const defaultValue = methodArg.defaultValue + if (defaultValue) { switch (defaultValue.source) { case 'literal': { const bytes = Buffer.from(defaultValue.data, 'base64') - const type = defaultValue.type ?? arg.type - return decodeAVMOrABIValue(type, bytes) + const value_type = defaultValue.type ?? methodArg.type + return getABIDecodedValue(value_type, bytes) } case 'method': { const method = this.getABIMethod(defaultValue.data) @@ -1089,33 +1091,54 @@ export class AppClient { if (result.return === undefined) { throw new Error('Default value method call did not return a value') } - // TODO: PD - confirm that we don't need to convert struct returned value to tuple anymore return result.return } case 'local': - case 'global': { - const state = defaultValue.source === 'global' ? await this.getGlobalState() : await this.getLocalState(sender) - const value = Object.values(state).find((s) => s.keyBase64 === defaultValue.data) - if (!value) { - throw new Error( - `Preparing default value for argument ${arg.name ?? `arg${i + 1}`} resulted in the failure: The key '${defaultValue.data}' could not be found in ${defaultValue.source} storage`, - ) - } - return 'valueRaw' in value ? decodeAVMOrABIValue(defaultValue.type ?? arg.type, value.valueRaw) : value.value - } + case 'global': case 'box': { - const value = await this.getBoxValue(Buffer.from(defaultValue.data, 'base64')) - return decodeAVMOrABIValue(defaultValue.type ?? arg.type, value) + return await this.getDefaultValueFromStorage( + { data: defaultValue.data, source: defaultValue.source }, + methodArg.name ?? `arg${i + 1}`, + sender, + ) } } } - if (!argTypeIsTransaction(arg.type)) { - throw new Error(`No value provided for required argument ${arg.name ?? `arg${i + 1}`} in call to method ${m.name}`) - } }) ?? [], ) } + private async getDefaultValueFromStorage(defaultValue: ABIDefaultValue, argName: string, sender: ReadableAddress): Promise { + const keys = + defaultValue.source === 'box' + ? getBoxABIStorageKeys(this.appSpec) + : defaultValue.source === 'global' + ? getGlobalABIStorageKeys(this.appSpec) + : getLocalABIStorageKeys(this.appSpec) + + const key = Object.values(keys).find((s) => s.key === defaultValue.data) + if (!key) { + throw new Error( + `Unable to find default value for argument '${argName}': The storage key (base64: '${defaultValue.data}') is not defined in the contract's ${defaultValue.source} storage schema`, + ) + } + + if (defaultValue.source === 'box') { + const value = await this.getBoxValue(Buffer.from(defaultValue.data, 'base64')) + return getABIDecodedValue(key.valueType, value) + } + + const state = defaultValue.source === 'global' ? await this.getGlobalState() : await this.getLocalState(sender) + const value = Object.values(state).find((s) => s.keyBase64 === defaultValue.data) + if (!value) { + throw new Error( + `Unable to find default value for argument '${argName}': No value exists in ${defaultValue.source} storage for key (base64: '${defaultValue.data}')`, + ) + } + + return 'valueRaw' in value ? getABIDecodedValue(key.valueType, value.valueRaw) : value.value + } + private getBareParamsMethods() { return { /** Return params for an update call, including deploy-time TEAL template replacements and compilation if provided */ @@ -1552,7 +1575,7 @@ export class AppClient { getValue: async (name: string) => { const metadata = getBoxABIStorageKey(that._appSpec, name) const value = await that.getBoxValue(Buffer.from(metadata.key, 'base64')) - return decodeAVMOrABIValue(metadata.valueType, value) + return getABIDecodedValue(metadata.valueType, value) }, /** * @@ -1565,10 +1588,10 @@ export class AppClient { getMapValue: async (mapName: string, key: Uint8Array | any) => { const metadata = getBoxABIStorageMap(that._appSpec, mapName) const prefix = Buffer.from(metadata.prefix ?? '', 'base64') - const encodedKey = Buffer.concat([prefix, encodeAVMOrABIValue(metadata.keyType, key)]) + const encodedKey = Buffer.concat([prefix, getABIEncodedValue(metadata.keyType, key)]) const base64Key = Buffer.from(encodedKey).toString('base64') const value = await that.getBoxValue(Buffer.from(base64Key, 'base64')) - return decodeAVMOrABIValue(metadata.valueType, value) + return getABIDecodedValue(metadata.valueType, value) }, /** @@ -1590,8 +1613,8 @@ export class AppClient { .filter((b) => binaryStartsWith(b.nameRaw, prefix)) .map(async (b) => { return [ - decodeAVMOrABIValue(metadata.keyType, b.nameRaw.slice(prefix.length)), - decodeAVMOrABIValue(metadata.valueType, await that.getBoxValue(b.nameRaw)), + getABIDecodedValue(metadata.keyType, b.nameRaw.slice(prefix.length)), + getABIDecodedValue(metadata.valueType, await that.getBoxValue(b.nameRaw)), ] as const }), ), @@ -1635,7 +1658,7 @@ export class AppClient { const value = state.find((s) => s.keyBase64 === metadata.key) if (value && 'valueRaw' in value) { - return decodeAVMOrABIValue(metadata.valueType, value.valueRaw) + return getABIDecodedValue(metadata.valueType, value.valueRaw) } return value?.value @@ -1654,12 +1677,12 @@ export class AppClient { const metadata = mapGetter()[mapName] const prefix = Buffer.from(metadata.prefix ?? '', 'base64') - const encodedKey = Buffer.concat([prefix, encodeAVMOrABIValue(metadata.keyType, key)]) + const encodedKey = Buffer.concat([prefix, getABIEncodedValue(metadata.keyType, key)]) const base64Key = Buffer.from(encodedKey).toString('base64') const value = state.find((s) => s.keyBase64 === base64Key) if (value && 'valueRaw' in value) { - return decodeAVMOrABIValue(metadata.valueType, value.valueRaw) + return getABIDecodedValue(metadata.valueType, value.valueRaw) } return value?.value @@ -1683,8 +1706,8 @@ export class AppClient { .map((s) => { const key = s.keyRaw.slice(prefix.length) return [ - decodeAVMOrABIValue(metadata.keyType, key), - 'valueRaw' in s ? decodeAVMOrABIValue(metadata.valueType, s.valueRaw) : s.value, + getABIDecodedValue(metadata.keyType, key), + 'valueRaw' in s ? getABIDecodedValue(metadata.valueType, s.valueRaw) : s.value, ] as const }), ) diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index ac9be8e14..dea55fdd1 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -1,4 +1,4 @@ -import { Arc56Contract, argTypeIsAbiType, decodeAVMOrABIValue, findABIMethod } from '@algorandfoundation/algokit-abi' +import { Arc56Contract, argTypeIsTransaction, findABIMethod, getABIDecodedValue } from '@algorandfoundation/algokit-abi' import { Address, ReadableAddress, getAddress, getOptionalAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner, OnApplicationComplete } from '@algorandfoundation/algokit-transact' import { ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' @@ -643,30 +643,32 @@ export class AppFactory { } } - // TODO: PD - confirm why only getCreateABIArgs, and nothing for update/delete private getCreateABIArgsWithDefaultValues( methodNameOrSignature: string, args: AppClientMethodCallParams['args'] | undefined, ): AppMethodCall['args'] { const m = findABIMethod(methodNameOrSignature, this._appSpec) - return args?.map((a, i) => { - const arg = m.args[i] - if (a !== undefined) { - return a + return args?.map((arg, i) => { + const methodArg = m.args[i] + if (arg !== undefined) { + return arg } - const defaultValue = arg.defaultValue - if (defaultValue && argTypeIsAbiType(arg.type)) { + if (argTypeIsTransaction(methodArg.type)) { + return arg + } + const defaultValue = methodArg.defaultValue + if (defaultValue) { switch (defaultValue.source) { case 'literal': { const bytes = Buffer.from(defaultValue.data, 'base64') - const type = defaultValue.type ?? arg.type - return decodeAVMOrABIValue(type, bytes) + const value_type = defaultValue.type ?? methodArg.type + return getABIDecodedValue(value_type, bytes) } default: throw new Error(`Can't provide default value for ${defaultValue.source} for a contract creation call`) } } - throw new Error(`No value provided for required argument ${arg.name ?? `arg${i + 1}`} in call to method ${m.name}`) + throw new Error(`No value provided for required argument ${methodArg.name ?? `arg${i + 1}`} in call to method ${m.name}`) }) } From 987bf7b611c548f194d38ac9f957fefa6c9557f4 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 11:05:34 +1000 Subject: [PATCH 27/43] update notes --- MIGRATION-NOTES.md | 3 ++- packages/sdk/src/logic/sourcemap.ts | 1 - src/types/composer.ts | 1 - 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/MIGRATION-NOTES.md b/MIGRATION-NOTES.md index 78f779781..16f212bb3 100644 --- a/MIGRATION-NOTES.md +++ b/MIGRATION-NOTES.md @@ -38,7 +38,7 @@ A collection of random notes pop up during the migration process. - Bring the unhappy path tests over (fail to encode/decode) - ABIResult vs ABIReturn - TestContractClient was updated - - TODO: PD - support txnCount for ABIMethod + - txnCount was removed from ABIMethod, do we need to add it back? - Remove `ABIMethodParams` - Make sure that the python utils also sort resources during resource population - migration stratefy for EventType.TxnGroupSimulated in utils-ts-debug @@ -49,3 +49,4 @@ A collection of random notes pop up during the migration process. - TODO: re-export transact under utils/transact folder - integration: - need to remove `decodeReturnValue` from the client generator +- TODO: move ProgramSourceMap diff --git a/packages/sdk/src/logic/sourcemap.ts b/packages/sdk/src/logic/sourcemap.ts index 76a55b04a..41fd00bbb 100644 --- a/packages/sdk/src/logic/sourcemap.ts +++ b/packages/sdk/src/logic/sourcemap.ts @@ -20,7 +20,6 @@ export interface PcLineLocation { nameIndex?: number } -// TODO: PD - delete this? /** * Contains a mapping from TEAL program PC to source file location. */ diff --git a/src/types/composer.ts b/src/types/composer.ts index 9c7300c44..1d1e4a5f7 100644 --- a/src/types/composer.ts +++ b/src/types/composer.ts @@ -1910,7 +1910,6 @@ export class TransactionComposer { } if (simulateResponse && simulateResponse.txnGroups[0].failedAt) { - // TODO: PD - this version doesn't write the trace into a file for (const txn of simulateResponse.txnGroups[0].txnResults) { err.traces.push({ trace: AlgorandSerializer.encode(txn.execTrace, SimulationTransactionExecTraceMeta, 'map'), From b2d63abb0ee487ab877626371cc6ec9e12fb328f Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 11:18:51 +1000 Subject: [PATCH 28/43] add name + displayName to ABIType --- MIGRATION-NOTES.md | 1 + packages/abi/src/abi-method.ts | 4 +- packages/abi/src/abi-type.ts | 108 ++++++++++++++------------------- packages/abi/src/index.ts | 1 - 4 files changed, 50 insertions(+), 64 deletions(-) diff --git a/MIGRATION-NOTES.md b/MIGRATION-NOTES.md index 16f212bb3..0834e6c78 100644 --- a/MIGRATION-NOTES.md +++ b/MIGRATION-NOTES.md @@ -40,6 +40,7 @@ A collection of random notes pop up during the migration process. - TestContractClient was updated - txnCount was removed from ABIMethod, do we need to add it back? - Remove `ABIMethodParams` + - name and displayName added. toString() is the `name`, `displayName` is `name`, except for struct - Make sure that the python utils also sort resources during resource population - migration stratefy for EventType.TxnGroupSimulated in utils-ts-debug - TODO: docs for composer simulate workflow diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index ba8e5706d..7962f60a9 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -176,10 +176,10 @@ export function getABIMethodSignature(abiMethod: ABIMethod): string { const args = abiMethod.args .map((arg) => { if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type - return arg.type.toString() + return arg.type.name }) .join(',') - const returns = abiMethod.returns.type === 'void' ? 'void' : abiMethod.returns.type.toString() + const returns = abiMethod.returns.type === 'void' ? 'void' : abiMethod.returns.type.name return `${abiMethod.name}(${args})${returns}` } diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 537d55abf..04bbec2bb 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -10,19 +10,6 @@ import type { ABIStructValue, ABIValue } from './abi-value' import { StructField } from './arc56-contract' import { bigIntToBytes, bytesToBigInt } from './bigint' -export enum ABITypeName { - Uint = 'Uint', - Ufixed = 'Ufixed', - Address = 'Address', - Bool = 'Bool', - Byte = 'Byte', - String = 'String', - Tuple = 'Tuple', - StaticArray = 'StaticArray', - DynamicArray = 'DynamicArray', - Struct = 'Struct', -} - const STATIC_ARRAY_REGEX = /^([a-z\d[\](),]+)\[(0|[1-9][\d]*)]$/ const UFIXED_REGEX = /^ufixed([1-9][\d]*)x([1-9][\d]*)$/ const MAX_LEN = 2 ** 16 - 1 @@ -48,14 +35,29 @@ interface Segment { * This is the abstract base class for all ABI types. */ export abstract class ABIType { - /** The name of this ABI type */ - abstract readonly name: ABITypeName - /** - * Converts the ABI type to its ARC-4 string representation. + * Returns the ARC-4 type name string representation. * @returns The ARC-4 type string (e.g., "uint256", "bool", "(uint8,address)") */ - abstract toString(): string + abstract get name(): string + + /** + * Returns a user-friendly display name for this type. + * For most types, this is the same as name. + * For struct types, this returns the struct name. + * @returns The display name for this type + */ + get displayName(): string { + return this.name + } + + /** + * Converts the ABI type to its string representation. + * @returns The ARC-4 type string + */ + toString(): string { + return this.name + } /** * Checks if this ABI type is equal to another. @@ -168,8 +170,6 @@ export abstract class ABIType { * An unsigned integer ABI type of a specific bit size. */ export class ABIUintType extends ABIType { - readonly name = ABITypeName.Uint - /** * Creates a new unsigned integer type. * @param bitSize The bit size (must be a multiple of 8, between 8 and 512) @@ -181,7 +181,7 @@ export class ABIUintType extends ABIType { } } - toString(): string { + get name(): string { return `uint${this.bitSize}` } @@ -199,11 +199,11 @@ export class ABIUintType extends ABIType { encode(value: ABIValue): Uint8Array { if (typeof value !== 'bigint' && typeof value !== 'number') { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + throw new Error(`Cannot encode value as ${this.name}: ${value}`) } if (value >= BigInt(2 ** this.bitSize) || value < BigInt(0)) { - throw new Error(`${value} is not a non-negative int or too big to fit in size ${this.toString()}`) + throw new Error(`${value} is not a non-negative int or too big to fit in size ${this.name}`) } if (typeof value === 'number' && !Number.isSafeInteger(value)) { throw new Error(`${value} should be converted into a BigInt before it is encoded`) @@ -213,7 +213,7 @@ export class ABIUintType extends ABIType { decode(bytes: Uint8Array): ABIValue { if (bytes.length !== this.bitSize / 8) { - throw new Error(`byte string must correspond to a ${this.toString()}`) + throw new Error(`byte string must correspond to a ${this.name}`) } const value = bytesToBigInt(bytes) return this.bitSize < 53 ? Number(value) : value @@ -224,8 +224,6 @@ export class ABIUintType extends ABIType { * A fixed-point number ABI type of a specific bit size and precision. */ export class ABIUfixedType extends ABIType { - readonly name = ABITypeName.Ufixed - /** * Creates a new fixed-point type. * @param bitSize The bit size (must be a multiple of 8, between 8 and 512) @@ -244,7 +242,7 @@ export class ABIUfixedType extends ABIType { } } - toString(): string { + get name(): string { return `ufixed${this.bitSize}x${this.precision}` } @@ -262,10 +260,10 @@ export class ABIUfixedType extends ABIType { encode(value: ABIValue): Uint8Array { if (typeof value !== 'bigint' && typeof value !== 'number') { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + throw new Error(`Cannot encode value as ${this.name}: ${value}`) } if (value >= BigInt(2 ** this.bitSize) || value < BigInt(0)) { - throw new Error(`${value} is not a non-negative int or too big to fit in size ${this.toString()}`) + throw new Error(`${value} is not a non-negative int or too big to fit in size ${this.name}`) } if (typeof value === 'number' && !Number.isSafeInteger(value)) { throw new Error(`${value} should be converted into a BigInt before it is encoded`) @@ -275,7 +273,7 @@ export class ABIUfixedType extends ABIType { decode(bytes: Uint8Array): ABIValue { if (bytes.length !== this.bitSize / 8) { - throw new Error(`byte string must correspond to a ${this.toString()}`) + throw new Error(`byte string must correspond to a ${this.name}`) } const value = bytesToBigInt(bytes) return this.bitSize < 53 ? Number(value) : value @@ -286,9 +284,7 @@ export class ABIUfixedType extends ABIType { * An Algorand address ABI type. */ export class ABIAddressType extends ABIType { - readonly name = ABITypeName.Address - - toString(): string { + get name(): string { return 'address' } @@ -325,9 +321,7 @@ export class ABIAddressType extends ABIType { * A boolean ABI type. */ export class ABIBoolType extends ABIType { - readonly name = ABITypeName.Bool - - toString(): string { + get name(): string { return 'bool' } @@ -364,9 +358,7 @@ export class ABIBoolType extends ABIType { * A single byte ABI type. */ export class ABIByteType extends ABIType { - readonly name = ABITypeName.Byte - - toString(): string { + get name(): string { return 'byte' } @@ -407,9 +399,7 @@ export class ABIByteType extends ABIType { * A dynamic-length string ABI type. */ export class ABIStringType extends ABIType { - readonly name = ABITypeName.String - - toString(): string { + get name(): string { return 'string' } @@ -467,8 +457,6 @@ export class ABIStringType extends ABIType { * A tuple ABI type containing other ABI types. */ export class ABITupleType extends ABIType { - readonly name = ABITypeName.Tuple - /** * Creates a new tuple type. * @param childTypes The types of the tuple elements @@ -480,10 +468,10 @@ export class ABITupleType extends ABIType { } } - toString(): string { + get name(): string { const typeStrings: string[] = [] for (let i = 0; i < this.childTypes.length; i++) { - typeStrings[i] = this.childTypes[i].toString() + typeStrings[i] = this.childTypes[i].name } return `(${typeStrings.join(',')})` } @@ -605,8 +593,6 @@ export class ABITupleType extends ABIType { * A static-length array ABI type. */ export class ABIArrayStaticType extends ABIType { - readonly name = ABITypeName.StaticArray - /** * Creates a new static array type. * @param childType The type of the array elements @@ -622,8 +608,8 @@ export class ABIArrayStaticType extends ABIType { } } - toString(): string { - return `${this.childType.toString()}[${this.length}]` + get name(): string { + return `${this.childType.name}[${this.length}]` } equals(other: ABIType): boolean { @@ -651,7 +637,7 @@ export class ABIArrayStaticType extends ABIType { encode(value: ABIValue): Uint8Array { if (!Array.isArray(value) && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + throw new Error(`Cannot encode value as ${this.name}: ${value}`) } if (value.length !== this.length) { throw new Error(`Value array does not match static array length. Expected ${this.length}, got ${value.length}`) @@ -677,8 +663,6 @@ export class ABIArrayStaticType extends ABIType { * A dynamic-length array ABI type. */ export class ABIArrayDynamicType extends ABIType { - readonly name = ABITypeName.DynamicArray - /** * Creates a new dynamic array type. * @param childType The type of the array elements @@ -687,8 +671,8 @@ export class ABIArrayDynamicType extends ABIType { super() } - toString(): string { - return `${this.childType.toString()}[]` + get name(): string { + return `${this.childType.name}[]` } equals(other: ABIType): boolean { @@ -714,7 +698,7 @@ export class ABIArrayDynamicType extends ABIType { encode(value: ABIValue): Uint8Array { if (!Array.isArray(value) && !(value instanceof Uint8Array)) { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + throw new Error(`Cannot encode value as ${this.name}: ${value}`) } const convertedTuple = this.toABITupleType(value.length) const encodedTuple = convertedTuple.encode(value) @@ -741,8 +725,6 @@ export class ABIArrayDynamicType extends ABIType { * A struct ABI type with named fields. */ export class ABIStructType extends ABIType { - readonly name = ABITypeName.Struct - /** * Creates a new struct type. * @param structName The name of the struct @@ -755,9 +737,13 @@ export class ABIStructType extends ABIType { super() } - toString(): string { + get name(): string { const tupleType = this.toABITupleType() - return tupleType.toString() + return tupleType.name + } + + get displayName(): string { + return this.structName } equals(other: ABIType): boolean { @@ -845,7 +831,7 @@ export class ABIStructType extends ABIType { encode(value: ABIValue): Uint8Array { if (typeof value !== 'object' || Array.isArray(value) || value instanceof Uint8Array || value instanceof Address) { - throw new Error(`Cannot encode value as ${this.toString()}: ${value}`) + throw new Error(`Cannot encode value as ${this.name}: ${value}`) } const tupleType = this.toABITupleType() diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index b1ff2e284..a932f073e 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -22,7 +22,6 @@ export { ABIStructType, ABITupleType, ABIType, - ABITypeName, ABIUfixedType, ABIUintType, parseTupleContent, From 5d80fdeebe6d66b9fb63198eddf1be81d7bc8323 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 11:33:29 +1000 Subject: [PATCH 29/43] wip - review --- packages/abi/src/abi-type.ts | 6 ++---- packages/abi/src/abi-value.ts | 4 ++-- packages/common/src/address.ts | 4 ++-- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 04bbec2bb..4efcaed1a 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -37,14 +37,12 @@ interface Segment { export abstract class ABIType { /** * Returns the ARC-4 type name string representation. - * @returns The ARC-4 type string (e.g., "uint256", "bool", "(uint8,address)") + * @returns The ARC-4 type string */ abstract get name(): string /** * Returns a user-friendly display name for this type. - * For most types, this is the same as name. - * For struct types, this returns the struct name. * @returns The display name for this type */ get displayName(): string { @@ -52,7 +50,7 @@ export abstract class ABIType { } /** - * Converts the ABI type to its string representation. + * Returns the ARC-4 type name string representation. * @returns The ARC-4 type string */ toString(): string { diff --git a/packages/abi/src/abi-value.ts b/packages/abi/src/abi-value.ts index db13d4294..17c857324 100644 --- a/packages/abi/src/abi-value.ts +++ b/packages/abi/src/abi-value.ts @@ -1,6 +1,6 @@ -import { Address } from '@algorandfoundation/algokit-common' +import type { Address } from '@algorandfoundation/algokit-common' -export type ABIValue = boolean | number | bigint | string | Uint8Array | ABIValue[] | ABIStructValue | Address +export type ABIValue = boolean | Address | number | bigint | string | Uint8Array | ABIValue[] | ABIStructValue export type ABIStructValue = { [key: string]: ABIValue diff --git a/packages/common/src/address.ts b/packages/common/src/address.ts index 893c9ad07..223d8283f 100644 --- a/packages/common/src/address.ts +++ b/packages/common/src/address.ts @@ -1,7 +1,7 @@ import base32 from 'hi-base32' import sha512 from 'js-sha512' -import { CHECKSUM_BYTE_LENGTH, HASH_BYTES_LENGTH } from './constants' import { arrayEqual, concatArrays } from './array' +import { CHECKSUM_BYTE_LENGTH, HASH_BYTES_LENGTH } from './constants' export const ALGORAND_ADDRESS_BYTE_LENGTH = 36 export const ALGORAND_CHECKSUM_BYTE_LENGTH = 4 @@ -11,7 +11,7 @@ export const ALGORAND_ZERO_ADDRESS_STRING = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA export const MALFORMED_ADDRESS_ERROR_MSG = 'address seems to be malformed' export const CHECKSUM_ADDRESS_ERROR_MSG = 'wrong checksum for address' -function checksumFromPublicKey(publicKey: Uint8Array): Uint8Array { +export function checksumFromPublicKey(publicKey: Uint8Array): Uint8Array { return Uint8Array.from(sha512.sha512_256.array(publicKey).slice(HASH_BYTES_LENGTH - CHECKSUM_BYTE_LENGTH, HASH_BYTES_LENGTH)) } From d187ef188c9d37187f6581f759084f88b6d051bf Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 11:54:58 +1000 Subject: [PATCH 30/43] convert method to class --- packages/abi/src/abi-method.spec.ts | 10 ++-- packages/abi/src/abi-method.ts | 88 +++++++++++++++++------------ packages/abi/src/index.ts | 5 +- src/transactions/method-call.ts | 3 +- src/types/algorand-client.spec.ts | 4 +- 5 files changed, 61 insertions(+), 49 deletions(-) diff --git a/packages/abi/src/abi-method.spec.ts b/packages/abi/src/abi-method.spec.ts index e73268781..3a678b7b6 100644 --- a/packages/abi/src/abi-method.spec.ts +++ b/packages/abi/src/abi-method.spec.ts @@ -1,6 +1,6 @@ import { Buffer } from 'buffer' import { describe, expect, test } from 'vitest' -import { getABIMethod, getABIMethodSelector, getABIMethodSignature } from './abi-method' +import { getABIMethod } from './abi-method' import { parseTupleContent } from './abi-type' describe('getABIMethod', () => { @@ -27,7 +27,7 @@ describe('getABIMethod', () => { ) }) -describe('getABIMethodSelector', () => { +describe('get ABIMethod selector', () => { test.each([ ['add(uint64,uint64)uint64', 'fe6bdf69'], ['optIn()void', '29314d95'], @@ -35,7 +35,7 @@ describe('getABIMethodSelector', () => { ['bootstrap(pay,pay,application)void', '895c2a3b'], ])('should generate correct selector for %s', (signature: string, expectedHex: string) => { const method = getABIMethod(signature) - const selector = getABIMethodSelector(method) + const selector = method.getSelector() expect(selector).toHaveLength(4) expect(Buffer.from(selector).toString('hex')).toBe(expectedHex) @@ -53,10 +53,10 @@ describe('parseTupleContent', () => { }) }) -describe('getABIMethodSignature round trip', () => { +describe('get ABIMethod signature round trip', () => { test.each([['add(uint64,uint64)uint64'], ['optIn()void']])('should round trip signature %s correctly', (signature: string) => { const method = getABIMethod(signature) - const regeneratedSignature = getABIMethodSignature(method) + const regeneratedSignature = method.getSignature() expect(regeneratedSignature).toBe(signature) }) }) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 7962f60a9..d5c741c1f 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -75,13 +75,53 @@ export type ABIStruct = { [key: string]: ABIStruct | ABIValue } -export type ABIMethod = { - name: string - description?: string - args: ABIMethodArg[] - returns: ABIMethodReturn - events?: ARC28Event[] - readonly?: boolean +export class ABIMethod { + readonly name: string + readonly description?: string + readonly args: ABIMethodArg[] + readonly returns: ABIMethodReturn + readonly events?: ARC28Event[] + readonly readonly?: boolean + + constructor(params: { + name: string + description?: string + args: ABIMethodArg[] + returns: ABIMethodReturn + events?: ARC28Event[] + readonly?: boolean + }) { + this.name = params.name + this.description = params.description + this.args = params.args + this.returns = params.returns + this.events = params.events + this.readonly = params.readonly + } + + /** + * Returns the signature of this ABI method. + * @returns The signature, e.g. `my_method(unit64,string)bytes` + */ + getSignature(): string { + const args = this.args + .map((arg) => { + if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type + return arg.type.name + }) + .join(',') + const returns = this.returns.type === 'void' ? 'void' : this.returns.type.name + return `${this.name}(${args})${returns}` + } + + /** + * Returns the method selector of this ABI method. + * @returns The 4-byte method selector + */ + getSelector(): Uint8Array { + const hash = sha512.sha512_256.array(this.getSignature()) + return new Uint8Array(hash.slice(0, 4)) + } } /** @@ -160,37 +200,11 @@ export function getABIMethod(signature: string): ABIMethod { const returnType = signature.slice(argsEnd + 1) const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn - return { + return new ABIMethod({ name, args, returns, - } satisfies ABIMethod -} - -/** - * Returns the signature of a given ABI method. - * @param signature The ABI method - * @returns The signature, e.g. `my_method(unit64,string)bytes` - */ -export function getABIMethodSignature(abiMethod: ABIMethod): string { - const args = abiMethod.args - .map((arg) => { - if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type - return arg.type.name - }) - .join(',') - const returns = abiMethod.returns.type === 'void' ? 'void' : abiMethod.returns.type.name - return `${abiMethod.name}(${args})${returns}` -} - -/** - * Returns the method selector of a given ABI method. - * @param abiMethod The ABI method - * @returns The 4-byte method selector - */ -export function getABIMethodSelector(abiMethod: ABIMethod): Uint8Array { - const hash = sha512.sha512_256.array(getABIMethodSignature(abiMethod)) - return new Uint8Array(hash.slice(0, 4)) + }) } function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): ABIMethod { @@ -243,14 +257,14 @@ function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): AB desc: method.returns.desc, } - return { + return new ABIMethod({ name: method.name, description: method.desc, args, returns, events: method.events, readonly: method.readonly, - } satisfies ABIMethod + }) } export function argTypeIsTransaction(type: ABIMethodArgType): type is ABITransactionType { diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index a932f073e..9c7a5cefe 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -1,4 +1,5 @@ export { + ABIMethod, argTypeIsAbiType, argTypeIsReference, argTypeIsTransaction, @@ -7,11 +8,9 @@ export { getABIDecodedValue, getABIEncodedValue, getABIMethod, - getABIMethodSelector, - getABIMethodSignature, isAVMType, } from './abi-method' -export type { ABIDefaultValue, ABIMethod, ABIReferenceType, ABIReturn } from './abi-method' +export type { ABIDefaultValue, ABIReferenceType, ABIReturn } from './abi-method' export { ABIAddressType, ABIArrayDynamicType, diff --git a/src/transactions/method-call.ts b/src/transactions/method-call.ts index 547ed2964..3bf330043 100644 --- a/src/transactions/method-call.ts +++ b/src/transactions/method-call.ts @@ -7,7 +7,6 @@ import { ABIValue, argTypeIsReference, argTypeIsTransaction, - getABIMethodSelector, } from '@algorandfoundation/algokit-abi' import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { getAddress } from '@algorandfoundation/algokit-common' @@ -320,7 +319,7 @@ function encodeMethodArguments( const encodedArgs = new Array() // Insert method selector at the front - encodedArgs.push(getABIMethodSelector(method)) + encodedArgs.push(method.getSelector()) // Get ABI types for non-transaction arguments const abiTypes = new Array() diff --git a/src/types/algorand-client.spec.ts b/src/types/algorand-client.spec.ts index 7ca66cc5b..f6f576222 100644 --- a/src/types/algorand-client.spec.ts +++ b/src/types/algorand-client.spec.ts @@ -1,4 +1,4 @@ -import { findABIMethod, getABIMethodSelector } from '@algorandfoundation/algokit-abi' +import { findABIMethod } from '@algorandfoundation/algokit-abi' import { AddressWithSigner } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { beforeAll, describe, expect, test } from 'vitest' @@ -120,7 +120,7 @@ describe('AlgorandClient', () => { sender: alice, appId: appId, args: [ - getABIMethodSelector(appClient.appClient.getABIMethod('doMath')!), + appClient.appClient.getABIMethod('doMath')!.getSelector(), algosdk.encodeUint64(1), algosdk.encodeUint64(2), Uint8Array.from(Buffer.from('AANzdW0=', 'base64')), //sum From 4ca9bcceb9f0d298ae99fd0f9e79f0fe75ee5ae2 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 12:11:14 +1000 Subject: [PATCH 31/43] continue ABIMethod class refactor --- MIGRATION-NOTES.md | 1 + packages/abi/src/abi-method.spec.ts | 14 +-- packages/abi/src/abi-method.ts | 112 +++++++++++------------ packages/abi/src/index.ts | 1 - src/types/algorand-client.spec.ts | 4 +- src/types/app-client.spec.ts | 8 +- src/types/app-client.ts | 10 +- src/types/app-factory-and-client.spec.ts | 6 +- src/types/app-factory.ts | 6 +- src/types/composer.spec.ts | 6 +- 10 files changed, 84 insertions(+), 84 deletions(-) diff --git a/MIGRATION-NOTES.md b/MIGRATION-NOTES.md index 0834e6c78..bc0588909 100644 --- a/MIGRATION-NOTES.md +++ b/MIGRATION-NOTES.md @@ -41,6 +41,7 @@ A collection of random notes pop up during the migration process. - txnCount was removed from ABIMethod, do we need to add it back? - Remove `ABIMethodParams` - name and displayName added. toString() is the `name`, `displayName` is `name`, except for struct + - getArc56Method replaced by getABIMethod - Make sure that the python utils also sort resources during resource population - migration stratefy for EventType.TxnGroupSimulated in utils-ts-debug - TODO: docs for composer simulate workflow diff --git a/packages/abi/src/abi-method.spec.ts b/packages/abi/src/abi-method.spec.ts index 3a678b7b6..c36f987af 100644 --- a/packages/abi/src/abi-method.spec.ts +++ b/packages/abi/src/abi-method.spec.ts @@ -1,9 +1,9 @@ import { Buffer } from 'buffer' import { describe, expect, test } from 'vitest' -import { getABIMethod } from './abi-method' +import { ABIMethod } from './abi-method' import { parseTupleContent } from './abi-type' -describe('getABIMethod', () => { +describe('ABIMethod.fromSignature', () => { test.each([ ['add(uint64,uint64)uint64', 'add', 'uint64', 2], ['getName()string', 'getName', 'string', 0], @@ -12,7 +12,7 @@ describe('getABIMethod', () => { ])( 'should parse method signature %s correctly', (signature: string, expectedName: string, expectedReturn: string, expectedArgCount: number) => { - const method = getABIMethod(signature) + const method = ABIMethod.fromSignature(signature) expect(method.name).toBe(expectedName) expect(method.args).toHaveLength(expectedArgCount) @@ -27,14 +27,14 @@ describe('getABIMethod', () => { ) }) -describe('get ABIMethod selector', () => { +describe('ABIMethod.getSelector', () => { test.each([ ['add(uint64,uint64)uint64', 'fe6bdf69'], ['optIn()void', '29314d95'], ['deposit(pay,uint64)void', 'f2355b55'], ['bootstrap(pay,pay,application)void', '895c2a3b'], ])('should generate correct selector for %s', (signature: string, expectedHex: string) => { - const method = getABIMethod(signature) + const method = ABIMethod.fromSignature(signature) const selector = method.getSelector() expect(selector).toHaveLength(4) @@ -53,9 +53,9 @@ describe('parseTupleContent', () => { }) }) -describe('get ABIMethod signature round trip', () => { +describe('ABIMethod.getSignature round trip', () => { test.each([['add(uint64,uint64)uint64'], ['optIn()void']])('should round trip signature %s correctly', (signature: string) => { - const method = getABIMethod(signature) + const method = ABIMethod.fromSignature(signature) const regeneratedSignature = method.getSignature() expect(regeneratedSignature).toBe(signature) }) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index d5c741c1f..270c8bf16 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -122,6 +122,61 @@ export class ABIMethod { const hash = sha512.sha512_256.array(this.getSignature()) return new Uint8Array(hash.slice(0, 4)) } + + /** + * Returns the ABI method object for a given method signature. + * @param signature The method signature + * e.g. `my_method(unit64,string)bytes` + * @returns The `ABIMethod` + */ + static fromSignature(signature: string): ABIMethod { + const argsStart = signature.indexOf('(') + if (argsStart === -1) { + throw new Error(`Invalid method signature: ${signature}`) + } + + let argsEnd = -1 + let depth = 0 + for (let i = argsStart; i < signature.length; i++) { + const char = signature[i] + + if (char === '(') { + depth += 1 + } else if (char === ')') { + if (depth === 0) { + // unpaired parenthesis + break + } + + depth -= 1 + if (depth === 0) { + argsEnd = i + break + } + } + } + + if (argsEnd === -1) { + throw new Error(`Invalid method signature: ${signature}`) + } + + const name = signature.slice(0, argsStart) + const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)) // hmmm the error is bad + .map((n: string) => { + if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) { + return { type: n as ABIMethodArgType } satisfies ABIMethodArg + } + return { type: ABIType.from(n) } satisfies ABIMethodArg + }) + const returnType = signature.slice(argsEnd + 1) + const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn + + return new ABIMethod({ + name, + args, + returns, + }) + } } /** @@ -131,7 +186,7 @@ export class ABIMethod { * @param appSpec The app spec for the app * @returns The `ABIMethod` */ -export function findABIMethod(methodNameOrSignature: string, appSpec: Arc56Contract): ABIMethod { +export function getABIMethod(methodNameOrSignature: string, appSpec: Arc56Contract): ABIMethod { if (!methodNameOrSignature.includes('(')) { const methods = appSpec.methods.filter((m) => m.name === methodNameOrSignature) if (methods.length === 0) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`) @@ -152,61 +207,6 @@ export function findABIMethod(methodNameOrSignature: string, appSpec: Arc56Contr } } -/** - * Returns the ABI method object for a given method signature. - * @param signature The method signature - * e.g. `my_method(unit64,string)bytes` - * @returns The `ABIMethod` - */ -export function getABIMethod(signature: string): ABIMethod { - const argsStart = signature.indexOf('(') - if (argsStart === -1) { - throw new Error(`Invalid method signature: ${signature}`) - } - - let argsEnd = -1 - let depth = 0 - for (let i = argsStart; i < signature.length; i++) { - const char = signature[i] - - if (char === '(') { - depth += 1 - } else if (char === ')') { - if (depth === 0) { - // unpaired parenthesis - break - } - - depth -= 1 - if (depth === 0) { - argsEnd = i - break - } - } - } - - if (argsEnd === -1) { - throw new Error(`Invalid method signature: ${signature}`) - } - - const name = signature.slice(0, argsStart) - const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)) // hmmm the error is bad - .map((n: string) => { - if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) { - return { type: n as ABIMethodArgType } satisfies ABIMethodArg - } - return { type: ABIType.from(n) } satisfies ABIMethodArg - }) - const returnType = signature.slice(argsEnd + 1) - const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn - - return new ABIMethod({ - name, - args, - returns, - }) -} - function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): ABIMethod { if (typeof method.name !== 'string' || typeof method.returns !== 'object' || !Array.isArray(method.args)) { throw new Error('Invalid ABIMethod parameters') diff --git a/packages/abi/src/index.ts b/packages/abi/src/index.ts index 9c7a5cefe..5cbbe593e 100644 --- a/packages/abi/src/index.ts +++ b/packages/abi/src/index.ts @@ -4,7 +4,6 @@ export { argTypeIsReference, argTypeIsTransaction, decodeAVMValue, - findABIMethod, getABIDecodedValue, getABIEncodedValue, getABIMethod, diff --git a/src/types/algorand-client.spec.ts b/src/types/algorand-client.spec.ts index f6f576222..986301a16 100644 --- a/src/types/algorand-client.spec.ts +++ b/src/types/algorand-client.spec.ts @@ -1,4 +1,4 @@ -import { findABIMethod } from '@algorandfoundation/algokit-abi' +import { getABIMethod } from '@algorandfoundation/algokit-abi' import { AddressWithSigner } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { beforeAll, describe, expect, test } from 'vitest' @@ -274,7 +274,7 @@ describe('AlgorandClient', () => { test('methodCall create', async () => { await algorand.send.appCreateMethodCall({ sender: alice, - method: findABIMethod('createApplication', APP_SPEC), + method: getABIMethod('createApplication', APP_SPEC), approvalProgram: await compileProgram(algorand, APP_SPEC.source!.approval), clearStateProgram: await compileProgram(algorand, APP_SPEC.source!.clear), }) diff --git a/src/types/app-client.spec.ts b/src/types/app-client.spec.ts index c7a85f546..46e45b86c 100644 --- a/src/types/app-client.spec.ts +++ b/src/types/app-client.spec.ts @@ -1,4 +1,4 @@ -import { ABIStructType, ABIType, ABIValue, findABIMethod, getABIMethod } from '@algorandfoundation/algokit-abi' +import { ABIMethod, ABIStructType, ABIType, ABIValue, getABIMethod } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' @@ -380,7 +380,7 @@ describe('app-client', () => { invariant(result.confirmations) invariant(result.confirmations[1]) expect(result.transactions.length).toBe(2) - const returnValue = AppManager.getABIReturn(result.confirmations[1], findABIMethod('call_abi_txn', client.appSpec)) + const returnValue = AppManager.getABIReturn(result.confirmations[1], getABIMethod('call_abi_txn', client.appSpec)) expect(result.return).toBe(`Sent ${txn.payment?.amount}. test`) expect(returnValue?.returnValue).toBe(result.return) }) @@ -724,7 +724,7 @@ describe('app-client', () => { const appCall1Params = { sender: testAccount, appId: appClient.appId, - method: getABIMethod('set_global(uint64,uint64,string,byte[4])void'), + method: ABIMethod.fromSignature('set_global(uint64,uint64,string,byte[4])void'), args: [1, 2, 'asdf', new Uint8Array([1, 2, 3, 4])], } @@ -737,7 +737,7 @@ describe('app-client', () => { const appCall2Params = { sender: testAccount, appId: appClient.appId, - method: getABIMethod('call_abi(string)string'), + method: ABIMethod.fromSignature('call_abi(string)string'), args: ['test'], } diff --git a/src/types/app-client.ts b/src/types/app-client.ts index 7c3b5bb05..a41d94e4f 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -7,9 +7,9 @@ import { Arc56Contract, ProgramSourceInfo, argTypeIsTransaction, - findABIMethod, getABIDecodedValue, getABIEncodedValue, + getABIMethod, getBoxABIStorageKey, getBoxABIStorageKeys, getBoxABIStorageMap, @@ -861,7 +861,7 @@ export class AppClient { * @returns A tuple with: [ARC-56 `Method`, algosdk `ABIMethod`] */ public getABIMethod(methodNameOrSignature: string) { - return findABIMethod(methodNameOrSignature, this._appSpec) + return getABIMethod(methodNameOrSignature, this._appSpec) } /** @@ -1059,7 +1059,7 @@ export class AppClient { args: AppClientMethodCallParams['args'] | undefined, sender: ReadableAddress, ): Promise['args']> { - const m = findABIMethod(methodNameOrSignature, this._appSpec) + const m = getABIMethod(methodNameOrSignature, this._appSpec) return await Promise.all( args?.map(async (arg, i) => { const methodArg = m.args[i] @@ -1352,7 +1352,7 @@ export class AppClient { // Read-only call - do it via simulate if ( (params.onComplete === OnApplicationComplete.NoOp || !params.onComplete) && - findABIMethod(params.method, this._appSpec).readonly + getABIMethod(params.method, this._appSpec).readonly ) { const readonlyParams = { ...params, @@ -1494,7 +1494,7 @@ export class AppClient { TOnComplete extends OnApplicationComplete, >(params: TParams, onComplete: TOnComplete) { const sender = this.getSender(params.sender) - const method = findABIMethod(params.method, this._appSpec) + const method = getABIMethod(params.method, this._appSpec) const args = await this.getABIArgsWithDefaultValues(params.method, params.args, sender) return { ...params, diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index 4dcc61b9f..9b2d867f2 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -1,4 +1,4 @@ -import { ABIType, ABIValue, Arc56Contract, findABIMethod } from '@algorandfoundation/algokit-abi' +import { ABIType, ABIValue, Arc56Contract, getABIMethod } from '@algorandfoundation/algokit-abi' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { Address, TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' @@ -476,7 +476,7 @@ describe('ARC32: app-factory-and-app-client', () => { invariant(result.confirmations) invariant(result.confirmations[1]) expect(result.transactions.length).toBe(2) - const returnValue = AppManager.getABIReturn(result.confirmations[1], findABIMethod('call_abi_txn', client.appSpec)) + const returnValue = AppManager.getABIReturn(result.confirmations[1], getABIMethod('call_abi_txn', client.appSpec)) expect(result.return).toBe(`Sent ${txn.payment?.amount}. test`) expect(returnValue?.returnValue).toBe(result.return) }) @@ -537,7 +537,7 @@ describe('ARC32: app-factory-and-app-client', () => { invariant(result.confirmations) invariant(result.confirmations[0]) expect(result.transactions.length).toBe(1) - const expectedReturnValue = AppManager.getABIReturn(result.confirmations[0], findABIMethod('call_abi_foreign_refs', client.appSpec)) + const expectedReturnValue = AppManager.getABIReturn(result.confirmations[0], getABIMethod('call_abi_foreign_refs', client.appSpec)) const testAccountPublicKey = testAccount.publicKey expect(result.return).toBe(`App: 345, Asset: 567, Account: ${testAccountPublicKey[0]}:${testAccountPublicKey[1]}`) expect(expectedReturnValue?.returnValue).toBe(result.return) diff --git a/src/types/app-factory.ts b/src/types/app-factory.ts index dea55fdd1..467176735 100644 --- a/src/types/app-factory.ts +++ b/src/types/app-factory.ts @@ -1,4 +1,4 @@ -import { Arc56Contract, argTypeIsTransaction, findABIMethod, getABIDecodedValue } from '@algorandfoundation/algokit-abi' +import { Arc56Contract, argTypeIsTransaction, getABIDecodedValue, getABIMethod } from '@algorandfoundation/algokit-abi' import { Address, ReadableAddress, getAddress, getOptionalAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner, OnApplicationComplete } from '@algorandfoundation/algokit-transact' import { ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' @@ -637,7 +637,7 @@ export class AppFactory { ...params, sender: this.getSender(params.sender), signer: this.getSigner(params.sender, params.signer), - method: findABIMethod(params.method, this._appSpec), + method: getABIMethod(params.method, this._appSpec), args: this.getCreateABIArgsWithDefaultValues(params.method, params.args), onComplete, } @@ -647,7 +647,7 @@ export class AppFactory { methodNameOrSignature: string, args: AppClientMethodCallParams['args'] | undefined, ): AppMethodCall['args'] { - const m = findABIMethod(methodNameOrSignature, this._appSpec) + const m = getABIMethod(methodNameOrSignature, this._appSpec) return args?.map((arg, i) => { const methodArg = m.args[i] if (arg !== undefined) { diff --git a/src/types/composer.spec.ts b/src/types/composer.spec.ts index 5f9cec642..0877c0f33 100644 --- a/src/types/composer.spec.ts +++ b/src/types/composer.spec.ts @@ -1,4 +1,4 @@ -import { getABIMethod } from '@algorandfoundation/algokit-abi' +import { ABIMethod } from '@algorandfoundation/algokit-abi' import { beforeEach, describe, expect, test } from 'vitest' import { algorandFixture } from '../testing' import { AlgoAmount } from './amount' @@ -97,7 +97,7 @@ describe('TransactionComposer', () => { composer1.addAppCallMethodCall({ appId: 123n, sender: testAccount, - method: getABIMethod('createBoxInNewApp(pay)void'), + method: ABIMethod.fromSignature('createBoxInNewApp(pay)void'), args: [ algorand.createTransaction.payment({ sender: testAccount, @@ -137,7 +137,7 @@ describe('TransactionComposer', () => { composer1.addAppCallMethodCall({ appId: 123n, sender: testAccount, - method: getABIMethod('createBoxInNewApp(pay)void'), + method: ABIMethod.fromSignature('createBoxInNewApp(pay)void'), args: [paymentTxn], }) From 95edbcbb812de930ea31c40c9d053d733e10d0a5 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 12:58:52 +1000 Subject: [PATCH 32/43] review --- MIGRATION-NOTES.md | 1 + src/types/app-spec.ts | 12 ++++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/MIGRATION-NOTES.md b/MIGRATION-NOTES.md index bc0588909..effd4832b 100644 --- a/MIGRATION-NOTES.md +++ b/MIGRATION-NOTES.md @@ -42,6 +42,7 @@ A collection of random notes pop up during the migration process. - Remove `ABIMethodParams` - name and displayName added. toString() is the `name`, `displayName` is `name`, except for struct - getArc56Method replaced by getABIMethod + - getABIDecodedValue changed behaviour, it doesn't deal with struct anymore - Make sure that the python utils also sort resources during resource population - migration stratefy for EventType.TxnGroupSimulated in utils-ts-debug - TODO: docs for composer simulate workflow diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index c6751d93e..fc7b7ad3a 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -173,7 +173,7 @@ export interface AppSpec { bare_call_config: CallConfig } -export interface ABIContractParams { +interface ABIContractParams { name: string desc?: string networks?: ABIContractNetworks @@ -181,14 +181,14 @@ export interface ABIContractParams { events?: ARC28Event[] } -export interface ABIContractNetworks { +interface ABIContractNetworks { [network: string]: ABIContractNetworkInfo } -export interface ABIContractNetworkInfo { +interface ABIContractNetworkInfo { appID: number } -export interface ABIMethodParams { +interface ABIMethodParams { name: string desc?: string args: ABIMethodArgParams[] @@ -199,13 +199,13 @@ export interface ABIMethodParams { events?: ARC28Event[] } -export interface ABIMethodArgParams { +interface ABIMethodArgParams { type: string name?: string desc?: string } -export interface ABIMethodReturnParams { +interface ABIMethodReturnParams { type: string desc?: string } From 11cc77ad221917c7f86248336b99fb1e12dbee98 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 12:59:10 +1000 Subject: [PATCH 33/43] doc gen --- docs/code/README.md | 1 - .../types_account_manager.AccountManager.md | 12 +- ...reator.AlgorandClientTransactionCreator.md | 16 +- ..._sender.AlgorandClientTransactionSender.md | 204 +++++------ .../classes/types_app_arc56.Arc56Method.md | 259 ------------- .../classes/types_app_client.AppClient.md | 310 ++++++++-------- .../classes/types_app_deployer.AppDeployer.md | 6 +- .../classes/types_app_factory.AppFactory.md | 156 +++----- .../classes/types_app_manager.AppManager.md | 48 +-- .../types_client_manager.ClientManager.md | 8 +- .../types_composer.TransactionComposer.md | 12 +- docs/code/enums/types_app.OnSchemaBreak.md | 6 +- docs/code/enums/types_app.OnUpdate.md | 8 +- .../interfaces/index.TransactionWithSigner.md | 4 +- .../interfaces/types_app.AppCallParams.md | 12 +- ...ypes_app.AppCallTransactionResultOfType.md | 2 +- .../types_app.AppCompilationResult.md | 4 +- .../interfaces/types_app.AppDeployMetadata.md | 8 +- docs/code/interfaces/types_app.AppLookup.md | 4 +- docs/code/interfaces/types_app.AppMetadata.md | 20 +- .../code/interfaces/types_app.AppReference.md | 4 +- .../interfaces/types_app.AppStorageSchema.md | 10 +- docs/code/interfaces/types_app.BoxName.md | 6 +- .../types_app.BoxValueRequestParams.md | 6 +- .../types_app.BoxValuesRequestParams.md | 6 +- .../code/interfaces/types_app.CompiledTeal.md | 10 +- .../interfaces/types_app.CoreAppCallArgs.md | 12 +- .../interfaces/types_app.RawAppCallArgs.md | 16 +- .../types_app_arc56.Arc56Contract.md | 284 -------------- docs/code/interfaces/types_app_arc56.Event.md | 51 --- .../code/interfaces/types_app_arc56.Method.md | 145 -------- .../types_app_arc56.ProgramSourceInfo.md | 38 -- .../interfaces/types_app_arc56.StorageKey.md | 64 ---- .../interfaces/types_app_arc56.StorageMap.md | 64 ---- .../interfaces/types_app_arc56.StructField.md | 38 -- .../types_app_client.AppClientCallABIArgs.md | 16 +- ...ypes_app_client.AppClientCallCoreParams.md | 6 +- ...s_app_client.AppClientCompilationParams.md | 6 +- ...s_app_client.AppClientCompilationResult.md | 8 +- ...ient.AppClientDeployCallInterfaceParams.md | 10 +- ...es_app_client.AppClientDeployCoreParams.md | 14 +- .../types_app_client.AppClientDeployParams.md | 26 +- .../types_app_client.AppClientParams.md | 18 +- .../types_app_client.AppSourceMaps.md | 4 +- .../types_app_client.FundAppAccountParams.md | 8 +- .../types_app_client.ResolveAppById.md | 6 +- .../types_app_client.ResolveAppByIdBase.md | 4 +- .../types_app_client.SourceMapExport.md | 8 +- .../types_app_deployer.AppMetadata.md | 8 +- .../types_app_factory.AppFactoryParams.md | 20 +- .../types_app_manager.AppInformation.md | 22 +- .../types_app_manager.BoxReference.md | 4 +- ...types_app_manager.BoxValueRequestParams.md | 6 +- ...ypes_app_manager.BoxValuesRequestParams.md | 6 +- .../interfaces/types_app_spec.AppSources.md | 4 +- .../code/interfaces/types_app_spec.AppSpec.md | 12 +- .../interfaces/types_app_spec.CallConfig.md | 10 +- .../types_app_spec.DeclaredSchemaValueSpec.md | 8 +- docs/code/interfaces/types_app_spec.Hint.md | 8 +- .../types_app_spec.ReservedSchemaValueSpec.md | 6 +- docs/code/interfaces/types_app_spec.Schema.md | 4 +- .../interfaces/types_app_spec.SchemaSpec.md | 4 +- .../types_app_spec.StateSchemaSpec.md | 4 +- docs/code/interfaces/types_app_spec.Struct.md | 4 +- .../types_client_manager.TypedAppClient.md | 2 +- ...nsaction.SendTransactionComposerResults.md | 2 +- docs/code/modules/index.md | 41 +-- docs/code/modules/types_app.md | 45 +-- docs/code/modules/types_app_arc56.md | 346 ------------------ docs/code/modules/types_app_client.md | 46 +-- docs/code/modules/types_app_deployer.md | 2 +- docs/code/modules/types_app_factory.md | 14 +- docs/code/modules/types_app_manager.md | 2 +- docs/code/modules/types_app_spec.md | 24 +- docs/code/modules/types_composer.md | 18 +- 75 files changed, 659 insertions(+), 2001 deletions(-) delete mode 100644 docs/code/classes/types_app_arc56.Arc56Method.md delete mode 100644 docs/code/interfaces/types_app_arc56.Arc56Contract.md delete mode 100644 docs/code/interfaces/types_app_arc56.Event.md delete mode 100644 docs/code/interfaces/types_app_arc56.Method.md delete mode 100644 docs/code/interfaces/types_app_arc56.ProgramSourceInfo.md delete mode 100644 docs/code/interfaces/types_app_arc56.StorageKey.md delete mode 100644 docs/code/interfaces/types_app_arc56.StorageMap.md delete mode 100644 docs/code/interfaces/types_app_arc56.StructField.md delete mode 100644 docs/code/modules/types_app_arc56.md diff --git a/docs/code/README.md b/docs/code/README.md index 9ea21a52d..5c2d2a6cf 100644 --- a/docs/code/README.md +++ b/docs/code/README.md @@ -21,7 +21,6 @@ - [types/amount](modules/types_amount.md) - [types/amount.spec](modules/types_amount_spec.md) - [types/app](modules/types_app.md) -- [types/app-arc56](modules/types_app_arc56.md) - [types/app-client](modules/types_app_client.md) - [types/app-client.spec](modules/types_app_client_spec.md) - [types/app-deployer](modules/types_app_deployer.md) diff --git a/docs/code/classes/types_account_manager.AccountManager.md b/docs/code/classes/types_account_manager.AccountManager.md index 326d8e717..9f40581d4 100644 --- a/docs/code/classes/types_account_manager.AccountManager.md +++ b/docs/code/classes/types_account_manager.AccountManager.md @@ -221,7 +221,7 @@ ___ ### ensureFunded -▸ **ensureFunded**(`accountToFund`, `dispenserAccount`, `minSpendingBalance`, `options?`): `Promise`\<`undefined` \| \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } & [`EnsureFundedResult`](../interfaces/types_account_manager.EnsureFundedResult.md)\> +▸ **ensureFunded**(`accountToFund`, `dispenserAccount`, `minSpendingBalance`, `options?`): `Promise`\<`undefined` \| \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } & [`EnsureFundedResult`](../interfaces/types_account_manager.EnsureFundedResult.md)\> Funds a given account using a dispenser account as a funding source such that the given account has a certain amount of Algo free to spend (accounting for @@ -240,7 +240,7 @@ https://dev.algorand.co/concepts/smart-contracts/costs-constraints#mbr #### Returns -`Promise`\<`undefined` \| \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } & [`EnsureFundedResult`](../interfaces/types_account_manager.EnsureFundedResult.md)\> +`Promise`\<`undefined` \| \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } & [`EnsureFundedResult`](../interfaces/types_account_manager.EnsureFundedResult.md)\> - The result of executing the dispensing transaction and the `amountFunded` if funds were needed. - `undefined` if no funds were needed. @@ -264,7 +264,7 @@ ___ ### ensureFundedFromEnvironment -▸ **ensureFundedFromEnvironment**(`accountToFund`, `minSpendingBalance`, `options?`): `Promise`\<`undefined` \| \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } & [`EnsureFundedResult`](../interfaces/types_account_manager.EnsureFundedResult.md)\> +▸ **ensureFundedFromEnvironment**(`accountToFund`, `minSpendingBalance`, `options?`): `Promise`\<`undefined` \| \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } & [`EnsureFundedResult`](../interfaces/types_account_manager.EnsureFundedResult.md)\> Funds a given account using a dispenser account retrieved from the environment, per the `dispenserFromEnvironment` method, as a funding source such that @@ -289,7 +289,7 @@ https://dev.algorand.co/concepts/smart-contracts/costs-constraints#mbr #### Returns -`Promise`\<`undefined` \| \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } & [`EnsureFundedResult`](../interfaces/types_account_manager.EnsureFundedResult.md)\> +`Promise`\<`undefined` \| \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } & [`EnsureFundedResult`](../interfaces/types_account_manager.EnsureFundedResult.md)\> - The result of executing the dispensing transaction and the `amountFunded` if funds were needed. - `undefined` if no funds were needed. @@ -680,7 +680,7 @@ ___ ### rekeyAccount -▸ **rekeyAccount**(`account`, `rekeyTo`, `options?`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ **rekeyAccount**(`account`, `rekeyTo`, `options?`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Rekey an account to a new address. @@ -696,7 +696,7 @@ Rekey an account to a new address. #### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> The result of the transaction and the transaction that was sent diff --git a/docs/code/classes/types_algorand_client_transaction_creator.AlgorandClientTransactionCreator.md b/docs/code/classes/types_algorand_client_transaction_creator.AlgorandClientTransactionCreator.md index d20f839d9..789caa26d 100644 --- a/docs/code/classes/types_algorand_client_transaction_creator.AlgorandClientTransactionCreator.md +++ b/docs/code/classes/types_algorand_client_transaction_creator.AlgorandClientTransactionCreator.md @@ -148,7 +148,7 @@ ___ ### appCallMethodCall -• **appCallMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> +• **appCallMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> Create an application call with ABI method call transaction. @@ -210,7 +210,7 @@ await algorand.createTransaction.appCallMethodCall({ | `params.accountReferences?` | `ReadableAddress`[] | Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.appId` | `bigint` | ID of the application; 0 if the application is being created. | | `params.appReferences?` | `bigint`[] | The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | -| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | +| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | | `params.assetReferences?` | `bigint`[] | The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.boxReferences?` | ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] | Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). 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. | | `params.extraFee?` | [`AlgoAmount`](types_amount.AlgoAmount.md) | The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees. | @@ -335,7 +335,7 @@ ___ ### appCreateMethodCall -• **appCreateMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> +• **appCreateMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> Create an application create call with ABI method call transaction. @@ -406,7 +406,7 @@ await algorand.createTransaction.appCreateMethodCall({ | `params.accountReferences?` | `ReadableAddress`[] | Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.appReferences?` | `bigint`[] | The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.approvalProgram` | `string` \| `Uint8Array` | The program to execute for all OnCompletes other than ClearState as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). | -| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | +| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | | `params.assetReferences?` | `bigint`[] | The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.boxReferences?` | ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] | Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). 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. | | `params.clearStateProgram` | `string` \| `Uint8Array` | The program to execute for ClearState OnComplete as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). | @@ -502,7 +502,7 @@ ___ ### appDeleteMethodCall -• **appDeleteMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> +• **appDeleteMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> Create an application delete call with ABI method call transaction. @@ -564,7 +564,7 @@ await algorand.createTransaction.appDeleteMethodCall({ | `params.accountReferences?` | `ReadableAddress`[] | Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.appId` | `bigint` | ID of the application; 0 if the application is being created. | | `params.appReferences?` | `bigint`[] | The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | -| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | +| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | | `params.assetReferences?` | `bigint`[] | The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.boxReferences?` | ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] | Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). 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. | | `params.extraFee?` | [`AlgoAmount`](types_amount.AlgoAmount.md) | The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees. | @@ -677,7 +677,7 @@ ___ ### appUpdateMethodCall -• **appUpdateMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> +• **appUpdateMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> Create an application update call with ABI method call transaction. @@ -742,7 +742,7 @@ await algorand.createTransaction.appUpdateMethodCall({ | `params.appId` | `bigint` | ID of the application; 0 if the application is being created. | | `params.appReferences?` | `bigint`[] | The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.approvalProgram` | `string` \| `Uint8Array` | The program to execute for all OnCompletes other than ClearState as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) | -| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | +| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | | `params.assetReferences?` | `bigint`[] | The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.boxReferences?` | ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] | Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). 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. | | `params.clearStateProgram` | `string` \| `Uint8Array` | The program to execute for ClearState OnComplete as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) | diff --git a/docs/code/classes/types_algorand_client_transaction_sender.AlgorandClientTransactionSender.md b/docs/code/classes/types_algorand_client_transaction_sender.AlgorandClientTransactionSender.md index 6db2d8eeb..479ace800 100644 --- a/docs/code/classes/types_algorand_client_transaction_sender.AlgorandClientTransactionSender.md +++ b/docs/code/classes/types_algorand_client_transaction_sender.AlgorandClientTransactionSender.md @@ -72,7 +72,7 @@ const transactionSender = new AlgorandClientTransactionSender(() => new Transact #### Defined in -[src/types/algorand-client-transaction-sender.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L53) +[src/types/algorand-client-transaction-sender.ts:54](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L54) ## Properties @@ -82,7 +82,7 @@ const transactionSender = new AlgorandClientTransactionSender(() => new Transact #### Defined in -[src/types/algorand-client-transaction-sender.ts:41](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L41) +[src/types/algorand-client-transaction-sender.ts:42](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L42) ___ @@ -92,7 +92,7 @@ ___ #### Defined in -[src/types/algorand-client-transaction-sender.ts:40](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L40) +[src/types/algorand-client-transaction-sender.ts:41](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L41) ___ @@ -110,13 +110,13 @@ ___ #### Defined in -[src/types/algorand-client-transaction-sender.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L39) +[src/types/algorand-client-transaction-sender.ts:40](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L40) ___ ### appCall -• **appCall**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` } & \{ `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `ClearState` \| `DeleteApplication` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **appCall**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` } & \{ `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `ClearState` \| `DeleteApplication` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Call a smart contract. @@ -161,7 +161,7 @@ await algorand.send.appCall({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -171,17 +171,17 @@ await algorand.send.appCall({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:738](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L738) +[src/types/algorand-client-transaction-sender.ts:739](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L739) ___ ### appCallMethodCall -• **appCallMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **appCallMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Call a smart contract via an ABI method. @@ -238,27 +238,27 @@ await algorand.send.appCallMethodCall({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters | Name | Type | Description | | :------ | :------ | :------ | -| `params` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md) | The parameters for the app call transaction | +| `params` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md) | The parameters for the app call transaction | ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:982](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L982) +[src/types/algorand-client-transaction-sender.ts:983](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L983) ___ ### appCreate -• **appCreate**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **appCreate**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Create a smart contract. @@ -313,7 +313,7 @@ await algorand.send.appCreate({ #### Type declaration -▸ (`params`): `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -323,17 +323,17 @@ await algorand.send.appCreate({ ##### Returns -`Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:598](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L598) +[src/types/algorand-client-transaction-sender.ts:599](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L599) ___ ### appCreateMethodCall -• **appCreateMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **appCreateMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Create a smart contract via an ABI method. @@ -400,27 +400,27 @@ await algorand.send.appCreateMethodCall({ #### Type declaration -▸ (`params`): `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters | Name | Type | Description | | :------ | :------ | :------ | -| `params` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md) | The parameters for the app creation transaction | +| `params` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md) | The parameters for the app creation transaction | ##### Returns -`Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:806](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L806) +[src/types/algorand-client-transaction-sender.ts:807](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L807) ___ ### appDelete -• **appDelete**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` } & \{ `onComplete?`: `DeleteApplication` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **appDelete**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` } & \{ `onComplete?`: `DeleteApplication` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Delete a smart contract. @@ -465,7 +465,7 @@ await algorand.send.appDelete({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -475,17 +475,17 @@ await algorand.send.appDelete({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:692](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L692) +[src/types/algorand-client-transaction-sender.ts:693](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L693) ___ ### appDeleteMethodCall -• **appDeleteMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **appDeleteMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Delete a smart contract via an ABI method. @@ -542,27 +542,27 @@ await algorand.send.appDeleteMethodCall({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters | Name | Type | Description | | :------ | :------ | :------ | -| `params` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md) | The parameters for the app deletion transaction | +| `params` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md) | The parameters for the app deletion transaction | ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:924](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L924) +[src/types/algorand-client-transaction-sender.ts:925](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L925) ___ ### appUpdate -• **appUpdate**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **appUpdate**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Update a smart contract. @@ -609,7 +609,7 @@ await algorand.send.appUpdate({ #### Type declaration -▸ (`params`): `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -619,17 +619,17 @@ await algorand.send.appUpdate({ ##### Returns -`Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:646](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L646) +[src/types/algorand-client-transaction-sender.ts:647](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L647) ___ ### appUpdateMethodCall -• **appUpdateMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **appUpdateMethodCall**: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Update a smart contract via an ABI method. @@ -688,27 +688,27 @@ await algorand.send.appUpdateMethodCall({ #### Type declaration -▸ (`params`): `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters | Name | Type | Description | | :------ | :------ | :------ | -| `params` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md) | The parameters for the app update transaction | +| `params` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md) | The parameters for the app update transaction | ##### Returns -`Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:866](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L866) +[src/types/algorand-client-transaction-sender.ts:867](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L867) ___ ### assetConfig -• **assetConfig**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `assetId`: `bigint` ; `clawback?`: `ReadableAddress` ; `freeze?`: `ReadableAddress` ; `manager?`: `ReadableAddress` ; `reserve?`: `ReadableAddress` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **assetConfig**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `assetId`: `bigint` ; `clawback?`: `ReadableAddress` ; `freeze?`: `ReadableAddress` ; `manager?`: `ReadableAddress` ; `reserve?`: `ReadableAddress` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Configure an existing Algorand Standard Asset. @@ -753,7 +753,7 @@ await algorand.send.assetConfig({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -763,17 +763,17 @@ await algorand.send.assetConfig({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:306](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L306) +[src/types/algorand-client-transaction-sender.ts:307](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L307) ___ ### assetDestroy -• **assetDestroy**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `assetId`: `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **assetDestroy**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `assetId`: `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Destroys an Algorand Standard Asset. @@ -814,7 +814,7 @@ await algorand.send.assetDestroy({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -824,17 +824,17 @@ await algorand.send.assetDestroy({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:386](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L386) +[src/types/algorand-client-transaction-sender.ts:387](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L387) ___ ### assetFreeze -• **assetFreeze**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `account`: `ReadableAddress` ; `assetId`: `bigint` ; `frozen`: `boolean` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **assetFreeze**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `account`: `ReadableAddress` ; `assetId`: `bigint` ; `frozen`: `boolean` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Freeze or unfreeze an Algorand Standard Asset for an account. @@ -873,7 +873,7 @@ await algorand.send.assetFreeze({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -883,17 +883,17 @@ await algorand.send.assetFreeze({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:345](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L345) +[src/types/algorand-client-transaction-sender.ts:346](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L346) ___ ### assetOptIn -• **assetOptIn**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `assetId`: `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **assetOptIn**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `assetId`: `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Opt an account into an Algorand Standard Asset. @@ -930,7 +930,7 @@ await algorand.send.assetOptIn({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -940,17 +940,17 @@ await algorand.send.assetOptIn({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:466](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L466) +[src/types/algorand-client-transaction-sender.ts:467](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L467) ___ ### assetTransfer -• **assetTransfer**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `amount`: `bigint` ; `assetId`: `bigint` ; `clawbackTarget?`: `ReadableAddress` ; `closeAssetTo?`: `ReadableAddress` ; `receiver`: `ReadableAddress` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **assetTransfer**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `amount`: `bigint` ; `assetId`: `bigint` ; `clawbackTarget?`: `ReadableAddress` ; `closeAssetTo?`: `ReadableAddress` ; `receiver`: `ReadableAddress` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Transfer an Algorand Standard Asset. @@ -992,7 +992,7 @@ await algorand.send.assetTransfer({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -1002,17 +1002,17 @@ await algorand.send.assetTransfer({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:428](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L428) +[src/types/algorand-client-transaction-sender.ts:429](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L429) ___ ### offlineKeyRegistration -• **offlineKeyRegistration**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `preventAccountFromEverParticipatingAgain?`: `boolean` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **offlineKeyRegistration**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `preventAccountFromEverParticipatingAgain?`: `boolean` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Register an offline key. @@ -1046,7 +1046,7 @@ const result = await algorand.send.offlineKeyRegistration({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -1056,17 +1056,17 @@ const result = await algorand.send.offlineKeyRegistration({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:1061](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L1061) +[src/types/algorand-client-transaction-sender.ts:1062](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L1062) ___ ### onlineKeyRegistration -• **onlineKeyRegistration**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `selectionKey`: `Uint8Array` ; `stateProofKey?`: `Uint8Array` ; `voteFirst`: `bigint` ; `voteKey`: `Uint8Array` ; `voteKeyDilution`: `bigint` ; `voteLast`: `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **onlineKeyRegistration**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `selectionKey`: `Uint8Array` ; `stateProofKey?`: `Uint8Array` ; `voteFirst`: `bigint` ; `voteKey`: `Uint8Array` ; `voteKeyDilution`: `bigint` ; `voteLast`: `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Register an online key. @@ -1112,7 +1112,7 @@ const result = await algorand.send.onlineKeyRegistration({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -1122,17 +1122,17 @@ const result = await algorand.send.onlineKeyRegistration({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:1028](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L1028) +[src/types/algorand-client-transaction-sender.ts:1029](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L1029) ___ ### payment -• **payment**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `receiver`: `ReadableAddress` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +• **payment**: (`params`: [`CommonTransactionParams`](../modules/types_composer.md#commontransactionparams) & \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `receiver`: `ReadableAddress` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Send a payment transaction to transfer Algo between accounts. @@ -1177,7 +1177,7 @@ const result = await algorand.send.payment({ #### Type declaration -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -1187,17 +1187,17 @@ const result = await algorand.send.payment({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:206](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L206) +[src/types/algorand-client-transaction-sender.ts:207](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L207) ## Methods ### \_send -▸ **_send**\<`T`\>(`c`, `log?`): (`params`: `T` & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ **_send**\<`T`\>(`c`, `log?`): (`params`: `T` & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Type parameters @@ -1211,14 +1211,14 @@ const result = await algorand.send.payment({ | :------ | :------ | | `c` | (`c`: [`TransactionComposer`](types_composer.TransactionComposer.md)) => (`params`: `T`) => [`TransactionComposer`](types_composer.TransactionComposer.md) | | `log?` | `Object` | -| `log.postLog?` | (`params`: `T`, `result`: \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }) => `string` | +| `log.postLog?` | (`params`: `T`, `result`: \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }) => `string` | | `log.preLog?` | (`params`: `T`, `transaction`: `Transaction`) => `string` | #### Returns `fn` -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -1228,23 +1228,23 @@ const result = await algorand.send.payment({ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:70](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L70) +[src/types/algorand-client-transaction-sender.ts:71](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L71) ___ ### \_sendAppCall -▸ **_sendAppCall**\<`T`\>(`c`, `log?`): (`params`: `T` & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ **_sendAppCall**\<`T`\>(`c`, `log?`): (`params`: `T` & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Type parameters | Name | Type | | :------ | :------ | -| `T` | extends \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| [`AppCallParams`](../modules/types_composer.md#appcallparams) \| [`AppDeleteParams`](../modules/types_composer.md#appdeleteparams) \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | +| `T` | extends \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| [`AppCallParams`](../modules/types_composer.md#appcallparams) \| [`AppDeleteParams`](../modules/types_composer.md#appdeleteparams) \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | #### Parameters @@ -1252,14 +1252,14 @@ ___ | :------ | :------ | | `c` | (`c`: [`TransactionComposer`](types_composer.TransactionComposer.md)) => (`params`: `T`) => [`TransactionComposer`](types_composer.TransactionComposer.md) | | `log?` | `Object` | -| `log.postLog?` | (`params`: `T`, `result`: \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }) => `string` | +| `log.postLog?` | (`params`: `T`, `result`: \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }) => `string` | | `log.preLog?` | (`params`: `T`, `transaction`: `Transaction`) => `string` | #### Returns `fn` -▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -1269,23 +1269,23 @@ ___ ##### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:105](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L105) +[src/types/algorand-client-transaction-sender.ts:106](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L106) ___ ### \_sendAppCreateCall -▸ **_sendAppCreateCall**\<`T`\>(`c`, `log?`): (`params`: `T` & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ **_sendAppCreateCall**\<`T`\>(`c`, `log?`): (`params`: `T` & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Type parameters | Name | Type | | :------ | :------ | -| `T` | extends \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | +| `T` | extends \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | #### Parameters @@ -1293,14 +1293,14 @@ ___ | :------ | :------ | | `c` | (`c`: [`TransactionComposer`](types_composer.TransactionComposer.md)) => (`params`: `T`) => [`TransactionComposer`](types_composer.TransactionComposer.md) | | `log?` | `Object` | -| `log.postLog?` | (`params`: `T`, `result`: \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }) => `string` | +| `log.postLog?` | (`params`: `T`, `result`: \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }) => `string` | | `log.preLog?` | (`params`: `T`, `transaction`: `Transaction`) => `string` | #### Returns `fn` -▸ (`params`): `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -1310,23 +1310,23 @@ ___ ##### Returns -`Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:148](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L148) +[src/types/algorand-client-transaction-sender.ts:149](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L149) ___ ### \_sendAppUpdateCall -▸ **_sendAppUpdateCall**\<`T`\>(`c`, `log?`): (`params`: `T` & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ **_sendAppUpdateCall**\<`T`\>(`c`, `log?`): (`params`: `T` & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Type parameters | Name | Type | | :------ | :------ | -| `T` | extends \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | +| `T` | extends \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | #### Parameters @@ -1334,14 +1334,14 @@ ___ | :------ | :------ | | `c` | (`c`: [`TransactionComposer`](types_composer.TransactionComposer.md)) => (`params`: `T`) => [`TransactionComposer`](types_composer.TransactionComposer.md) | | `log?` | `Object` | -| `log.postLog?` | (`params`: `T`, `result`: \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }) => `string` | +| `log.postLog?` | (`params`: `T`, `result`: \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }) => `string` | | `log.preLog?` | (`params`: `T`, `transaction`: `Transaction`) => `string` | #### Returns `fn` -▸ (`params`): `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ (`params`): `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ##### Parameters @@ -1351,17 +1351,17 @@ ___ ##### Returns -`Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> #### Defined in -[src/types/algorand-client-transaction-sender.ts:129](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L129) +[src/types/algorand-client-transaction-sender.ts:130](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L130) ___ ### assetCreate -▸ **assetCreate**(`params`): `Promise`\<\{ `assetId`: `bigint` ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ **assetCreate**(`params`): `Promise`\<\{ `assetId`: `bigint` ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Create a new Algorand Standard Asset. @@ -1376,7 +1376,7 @@ opted in to the asset and will hold all units after creation. #### Returns -`Promise`\<\{ `assetId`: `bigint` ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `assetId`: `bigint` ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> The result of the asset create transaction and the transaction that was sent @@ -1423,13 +1423,13 @@ await algorand.send.assetCreate({ #### Defined in -[src/types/algorand-client-transaction-sender.ts:257](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L257) +[src/types/algorand-client-transaction-sender.ts:258](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L258) ___ ### assetOptOut -▸ **assetOptOut**(`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ **assetOptOut**(`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Opt an account out of an Algorand Standard Asset. @@ -1445,7 +1445,7 @@ is set to `false` (but then the account will lose the assets). #### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> The result of the asset opt-out transaction and the transaction that was sent @@ -1490,7 +1490,7 @@ await algorand.send.assetOptOut({ #### Defined in -[src/types/algorand-client-transaction-sender.ts:514](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L514) +[src/types/algorand-client-transaction-sender.ts:515](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L515) ___ @@ -1515,4 +1515,4 @@ const result = await composer.addTransaction(payment).send() #### Defined in -[src/types/algorand-client-transaction-sender.ts:66](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L66) +[src/types/algorand-client-transaction-sender.ts:67](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client-transaction-sender.ts#L67) diff --git a/docs/code/classes/types_app_arc56.Arc56Method.md b/docs/code/classes/types_app_arc56.Arc56Method.md deleted file mode 100644 index e9a68ef1d..000000000 --- a/docs/code/classes/types_app_arc56.Arc56Method.md +++ /dev/null @@ -1,259 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / [types/app-arc56](../modules/types_app_arc56.md) / Arc56Method - -# Class: Arc56Method - -[types/app-arc56](../modules/types_app_arc56.md).Arc56Method - -Wrapper around `algosdk.ABIMethod` that represents an ARC-56 ABI method. - -## Hierarchy - -- `ABIMethod` - - ↳ **`Arc56Method`** - -## Table of contents - -### Constructors - -- [constructor](types_app_arc56.Arc56Method.md#constructor) - -### Properties - -- [args](types_app_arc56.Arc56Method.md#args) -- [description](types_app_arc56.Arc56Method.md#description) -- [events](types_app_arc56.Arc56Method.md#events) -- [method](types_app_arc56.Arc56Method.md#method) -- [name](types_app_arc56.Arc56Method.md#name) -- [readonly](types_app_arc56.Arc56Method.md#readonly) -- [returns](types_app_arc56.Arc56Method.md#returns) - -### Methods - -- [getSelector](types_app_arc56.Arc56Method.md#getselector) -- [getSignature](types_app_arc56.Arc56Method.md#getsignature) -- [toJSON](types_app_arc56.Arc56Method.md#tojson) -- [txnCount](types_app_arc56.Arc56Method.md#txncount) -- [fromSignature](types_app_arc56.Arc56Method.md#fromsignature) - -## Constructors - -### constructor - -• **new Arc56Method**(`method`): [`Arc56Method`](types_app_arc56.Arc56Method.md) - -#### Parameters - -| Name | Type | -| :------ | :------ | -| `method` | [`Method`](../interfaces/types_app_arc56.Method.md) | - -#### Returns - -[`Arc56Method`](types_app_arc56.Arc56Method.md) - -#### Overrides - -algosdk.ABIMethod.constructor - -#### Defined in - -[src/types/app-arc56.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L27) - -## Properties - -### args - -• `Readonly` **args**: \{ `defaultValue?`: \{ `data`: `string` ; `source`: ``"method"`` \| ``"box"`` \| ``"local"`` \| ``"global"`` \| ``"literal"`` ; `type?`: `string` } ; `desc?`: `string` ; `name?`: `string` ; `struct?`: `string` ; `type`: `ABIArgumentType` }[] - -#### Overrides - -algosdk.ABIMethod.args - -#### Defined in - -[src/types/app-arc56.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L24) - -___ - -### description - -• `Optional` `Readonly` **description**: `string` - -#### Inherited from - -algosdk.ABIMethod.description - -#### Defined in - -[packages/sdk/src/abi/method.ts:77](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/packages/sdk/src/abi/method.ts#L77) - -___ - -### events - -• `Optional` `Readonly` **events**: `ARC28Event`[] - -#### Inherited from - -algosdk.ABIMethod.events - -#### Defined in - -[packages/sdk/src/abi/method.ts:85](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/packages/sdk/src/abi/method.ts#L85) - -___ - -### method - -• **method**: [`Method`](../interfaces/types_app_arc56.Method.md) - -#### Defined in - -[src/types/app-arc56.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L27) - -___ - -### name - -• `Readonly` **name**: `string` - -#### Inherited from - -algosdk.ABIMethod.name - -#### Defined in - -[packages/sdk/src/abi/method.ts:76](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/packages/sdk/src/abi/method.ts#L76) - -___ - -### readonly - -• `Optional` `Readonly` **readonly**: `boolean` - -#### Inherited from - -algosdk.ABIMethod.readonly - -#### Defined in - -[packages/sdk/src/abi/method.ts:86](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/packages/sdk/src/abi/method.ts#L86) - -___ - -### returns - -• `Readonly` **returns**: `Object` - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `desc?` | `string` | Optional, user-friendly description for the return value | -| `struct?` | `string` | If the type is a struct, the name of the struct | -| `type` | `ABIReturnType` | - | - -#### Overrides - -algosdk.ABIMethod.returns - -#### Defined in - -[src/types/app-arc56.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L25) - -## Methods - -### getSelector - -▸ **getSelector**(): `Uint8Array` - -#### Returns - -`Uint8Array` - -#### Inherited from - -algosdk.ABIMethod.getSelector - -#### Defined in - -[packages/sdk/src/abi/method.ts:125](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/packages/sdk/src/abi/method.ts#L125) - -___ - -### getSignature - -▸ **getSignature**(): `string` - -#### Returns - -`string` - -#### Inherited from - -algosdk.ABIMethod.getSignature - -#### Defined in - -[packages/sdk/src/abi/method.ts:119](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/packages/sdk/src/abi/method.ts#L119) - -___ - -### toJSON - -▸ **toJSON**(): [`Method`](../interfaces/types_app_arc56.Method.md) - -#### Returns - -[`Method`](../interfaces/types_app_arc56.Method.md) - -#### Overrides - -algosdk.ABIMethod.toJSON - -#### Defined in - -[src/types/app-arc56.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L39) - -___ - -### txnCount - -▸ **txnCount**(): `number` - -#### Returns - -`number` - -#### Inherited from - -algosdk.ABIMethod.txnCount - -#### Defined in - -[packages/sdk/src/abi/method.ts:130](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/packages/sdk/src/abi/method.ts#L130) - -___ - -### fromSignature - -▸ **fromSignature**(`signature`): `ABIMethod` - -#### Parameters - -| Name | Type | -| :------ | :------ | -| `signature` | `string` | - -#### Returns - -`ABIMethod` - -#### Inherited from - -algosdk.ABIMethod.fromSignature - -#### Defined in - -[packages/sdk/src/abi/method.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/packages/sdk/src/abi/method.ts#L158) diff --git a/docs/code/classes/types_app_client.AppClient.md b/docs/code/classes/types_app_client.AppClient.md index 80c9a0b5b..2aeaa49d6 100644 --- a/docs/code/classes/types_app_client.AppClient.md +++ b/docs/code/classes/types_app_client.AppClient.md @@ -64,6 +64,7 @@ state for a specific deployed instance of an app (with a known app ID). - [getBoxValueFromABIType](types_app_client.AppClient.md#getboxvaluefromabitype) - [getBoxValues](types_app_client.AppClient.md#getboxvalues) - [getBoxValuesFromABIType](types_app_client.AppClient.md#getboxvaluesfromabitype) +- [getDefaultValueFromStorage](types_app_client.AppClient.md#getdefaultvaluefromstorage) - [getGlobalState](types_app_client.AppClient.md#getglobalstate) - [getLocalState](types_app_client.AppClient.md#getlocalstate) - [getMethodCallCreateTransactionMethods](types_app_client.AppClient.md#getmethodcallcreatetransactionmethods) @@ -112,7 +113,7 @@ const appClient = new AppClient({ #### Defined in -[src/types/app-client.ts:457](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L457) +[src/types/app-client.ts:464](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L464) ## Properties @@ -122,7 +123,7 @@ const appClient = new AppClient({ #### Defined in -[src/types/app-client.ts:423](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L423) +[src/types/app-client.ts:430](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L430) ___ @@ -132,7 +133,7 @@ ___ #### Defined in -[src/types/app-client.ts:420](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L420) +[src/types/app-client.ts:427](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L427) ___ @@ -142,7 +143,7 @@ ___ #### Defined in -[src/types/app-client.ts:419](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L419) +[src/types/app-client.ts:426](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L426) ___ @@ -152,17 +153,17 @@ ___ #### Defined in -[src/types/app-client.ts:421](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L421) +[src/types/app-client.ts:428](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L428) ___ ### \_appSpec -• `Private` **\_appSpec**: [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +• `Private` **\_appSpec**: `Arc56Contract` #### Defined in -[src/types/app-client.ts:422](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L422) +[src/types/app-client.ts:429](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L429) ___ @@ -172,7 +173,7 @@ ___ #### Defined in -[src/types/app-client.ts:427](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L427) +[src/types/app-client.ts:434](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L434) ___ @@ -185,13 +186,13 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | | `getAll` | () => `Promise`\<`Record`\<`string`, `any`\>\> | - | -| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `getMapValue` | (`mapName`: `string`, `key`: `any`) => `Promise`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `getValue` | (`name`: `string`) => `Promise`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | +| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> | - | +| `getMapValue` | (`mapName`: `string`, `key`: `any`) => `Promise`\<`ABIValue`\> | - | +| `getValue` | (`name`: `string`) => `Promise`\<`ABIValue`\> | - | #### Defined in -[src/types/app-client.ts:432](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L432) +[src/types/app-client.ts:439](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L439) ___ @@ -201,17 +202,17 @@ ___ #### Defined in -[src/types/app-client.ts:428](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L428) +[src/types/app-client.ts:435](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L435) ___ ### \_createTransactionsMethods -• `Private` **\_createTransactionsMethods**: \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> } } +• `Private` **\_createTransactionsMethods**: \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> } } #### Defined in -[src/types/app-client.ts:437](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L437) +[src/types/app-client.ts:444](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L444) ___ @@ -221,7 +222,7 @@ ___ #### Defined in -[src/types/app-client.ts:424](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L424) +[src/types/app-client.ts:431](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L431) ___ @@ -231,7 +232,7 @@ ___ #### Defined in -[src/types/app-client.ts:425](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L425) +[src/types/app-client.ts:432](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L432) ___ @@ -244,13 +245,13 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | | `getAll` | () => `Promise`\<`Record`\<`string`, `any`\>\> | - | -| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `getMapValue` | (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `getValue` | (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | +| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> | - | +| `getMapValue` | (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> | - | +| `getValue` | (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> | - | #### Defined in -[src/types/app-client.ts:431](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L431) +[src/types/app-client.ts:438](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L438) ___ @@ -267,13 +268,13 @@ ___ #### Defined in -[src/types/app-client.ts:443](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L443) +[src/types/app-client.ts:450](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L450) ___ ### \_localStateMethods -• `Private` **\_localStateMethods**: (`address`: `string` \| `Address`) => \{ `getAll`: () => `Promise`\<`Record`\<`string`, `any`\>\> ; `getMap`: (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `getMapValue`: (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> ; `getValue`: (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> } +• `Private` **\_localStateMethods**: (`address`: `ReadableAddress`) => \{ `getAll`: () => `Promise`\<`Record`\<`string`, `any`\>\> ; `getMap`: (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> ; `getMapValue`: (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> ; `getValue`: (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> } #### Type declaration @@ -283,7 +284,7 @@ ___ | Name | Type | | :------ | :------ | -| `address` | `string` \| `Address` | +| `address` | `ReadableAddress` | ##### Returns @@ -292,33 +293,33 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | | `getAll` | () => `Promise`\<`Record`\<`string`, `any`\>\> | - | -| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `getMapValue` | (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `getValue` | (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | +| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> | - | +| `getMapValue` | (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> | - | +| `getValue` | (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> | - | #### Defined in -[src/types/app-client.ts:430](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L430) +[src/types/app-client.ts:437](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L437) ___ ### \_paramsMethods -• `Private` **\_paramsMethods**: \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `receiver`: `Address` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `extraProgramPages?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `schema?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appId`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `UpdateApplication` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppDeleteParams`](../modules/types_composer.md#appdeleteparams) ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> } } +• `Private` **\_paramsMethods**: \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `receiver`: `Address` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `extraProgramPages?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `schema?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appId`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `UpdateApplication` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppDeleteParams`](../modules/types_composer.md#appdeleteparams) ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> } } #### Defined in -[src/types/app-client.ts:434](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L434) +[src/types/app-client.ts:441](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L441) ___ ### \_sendMethods -• `Private` **\_sendMethods**: \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } } +• `Private` **\_sendMethods**: \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } } #### Defined in -[src/types/app-client.ts:440](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L440) +[src/types/app-client.ts:447](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L447) ## Accessors @@ -334,7 +335,7 @@ A reference to the underlying `AlgorandClient` this app client is using. #### Defined in -[src/types/app-client.ts:624](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L624) +[src/types/app-client.ts:631](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L631) ___ @@ -350,7 +351,7 @@ The app address of the app instance this client is linked to. #### Defined in -[src/types/app-client.ts:609](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L609) +[src/types/app-client.ts:616](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L616) ___ @@ -366,7 +367,7 @@ The ID of the app instance this client is linked to. #### Defined in -[src/types/app-client.ts:604](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L604) +[src/types/app-client.ts:611](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L611) ___ @@ -382,45 +383,45 @@ The name of the app (from the ARC-32 / ARC-56 app spec or override). #### Defined in -[src/types/app-client.ts:614](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L614) +[src/types/app-client.ts:621](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L621) ___ ### appSpec -• `get` **appSpec**(): [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +• `get` **appSpec**(): `Arc56Contract` The ARC-56 app spec being used #### Returns -[`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +`Arc56Contract` #### Defined in -[src/types/app-client.ts:619](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L619) +[src/types/app-client.ts:626](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L626) ___ ### createTransaction -• `get` **createTransaction**(): \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> } } +• `get` **createTransaction**(): \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> } } Create transactions for the current app #### Returns -\{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> } } +\{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> } } #### Defined in -[src/types/app-client.ts:648](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L648) +[src/types/app-client.ts:655](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L655) ___ ### params -• `get` **params**(): \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `receiver`: `Address` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `extraProgramPages?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `schema?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appId`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `UpdateApplication` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppDeleteParams`](../modules/types_composer.md#appdeleteparams) ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> } } +• `get` **params**(): \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `receiver`: `Address` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `extraProgramPages?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `schema?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appId`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `UpdateApplication` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppDeleteParams`](../modules/types_composer.md#appdeleteparams) ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> } } Get parameters to create transactions for the current app. @@ -428,7 +429,7 @@ A good mental model for this is that these parameters represent a deferred trans #### Returns -\{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `receiver`: `Address` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `extraProgramPages?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `schema?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appId`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `UpdateApplication` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppDeleteParams`](../modules/types_composer.md#appdeleteparams) ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> } } +\{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `receiver`: `Address` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `extraProgramPages?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `schema?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... ; `accountReferences?`: ... ; `appId`: ... ; `appReferences?`: ... ; `approvalProgram`: ... ; `args?`: ... ; `assetReferences?`: ... ; `boxReferences?`: ... ; `clearStateProgram`: ... ; `extraFee?`: ... ; `firstValidRound?`: ... ; `lastValidRound?`: ... ; `lease?`: ... ; `maxFee?`: ... ; `note?`: ... ; `onComplete?`: ... ; `rejectVersion?`: ... ; `rekeyTo?`: ... ; `sender`: ... ; `signer?`: ... ; `staticFee?`: ... ; `validityWindow?`: ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `UpdateApplication` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppDeleteParams`](../modules/types_composer.md#appdeleteparams) ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => [`AppCallParams`](../modules/types_composer.md#appcallparams) ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> } } **`Example`** @@ -447,23 +448,23 @@ await appClient.send.call({method: 'my_method2', args: [myMethodCall]}) #### Defined in -[src/types/app-client.ts:643](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L643) +[src/types/app-client.ts:650](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L650) ___ ### send -• `get` **send**(): \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } } +• `get` **send**(): \{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } } Send transactions to the current app #### Returns -\{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } } +\{ `call`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `closeOut`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `delete`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `fundAppAccount`: (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> ; `update`: (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } & \{ `bare`: \{ `call`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `clearState`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `closeOut`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `delete`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `optIn`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> ; `update`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> } } #### Defined in -[src/types/app-client.ts:653](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L653) +[src/types/app-client.ts:660](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L660) ___ @@ -479,21 +480,21 @@ Get state (local, global, box) from the current app | Name | Type | Description | | :------ | :------ | :------ | -| `box` | \{ `getAll`: () => `Promise`\<`Record`\<`string`, `any`\>\> ; `getMap`: (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `getMapValue`: (`mapName`: `string`, `key`: `any`) => `Promise`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> ; `getValue`: (`name`: `string`) => `Promise`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> } | Methods to access box storage for the current app | +| `box` | \{ `getAll`: () => `Promise`\<`Record`\<`string`, `any`\>\> ; `getMap`: (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> ; `getMapValue`: (`mapName`: `string`, `key`: `any`) => `Promise`\<`ABIValue`\> ; `getValue`: (`name`: `string`) => `Promise`\<`ABIValue`\> } | Methods to access box storage for the current app | | `box.getAll` | () => `Promise`\<`Record`\<`string`, `any`\>\> | - | -| `box.getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `box.getMapValue` | (`mapName`: `string`, `key`: `any`) => `Promise`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `box.getValue` | (`name`: `string`) => `Promise`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `global` | \{ `getAll`: () => `Promise`\<`Record`\<`string`, `any`\>\> ; `getMap`: (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `getMapValue`: (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> ; `getValue`: (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> } | Methods to access global state for the current app | +| `box.getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> | - | +| `box.getMapValue` | (`mapName`: `string`, `key`: `any`) => `Promise`\<`ABIValue`\> | - | +| `box.getValue` | (`name`: `string`) => `Promise`\<`ABIValue`\> | - | +| `global` | \{ `getAll`: () => `Promise`\<`Record`\<`string`, `any`\>\> ; `getMap`: (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> ; `getMapValue`: (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> ; `getValue`: (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> } | Methods to access global state for the current app | | `global.getAll` | () => `Promise`\<`Record`\<`string`, `any`\>\> | - | -| `global.getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `global.getMapValue` | (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `global.getValue` | (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `local` | (`address`: `string` \| `Address`) => \{ `getAll`: () => `Promise`\<`Record`\<`string`, `any`\>\> ; `getMap`: (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> ; `getMapValue`: (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> ; `getValue`: (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> } | - | +| `global.getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> | - | +| `global.getMapValue` | (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> | - | +| `global.getValue` | (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> | - | +| `local` | (`address`: `ReadableAddress`) => \{ `getAll`: () => `Promise`\<`Record`\<`string`, `any`\>\> ; `getMap`: (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> ; `getMapValue`: (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> ; `getValue`: (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> } | - | #### Defined in -[src/types/app-client.ts:658](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L658) +[src/types/app-client.ts:665](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L665) ## Methods @@ -529,7 +530,7 @@ const appClient2 = appClient.clone({ defaultSender: 'NEW_SENDER_ADDRESS' }) #### Defined in -[src/types/app-client.ts:512](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L512) +[src/types/app-client.ts:519](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L519) ___ @@ -559,7 +560,7 @@ The compiled code and any compilation results (including source maps) #### Defined in -[src/types/app-client.ts:889](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L889) +[src/types/app-client.ts:896](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L896) ___ @@ -577,7 +578,7 @@ The source maps #### Defined in -[src/types/app-client.ts:828](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L828) +[src/types/app-client.ts:835](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L835) ___ @@ -603,13 +604,13 @@ The new error, or if there was no logic error or source map then the wrapped err #### Defined in -[src/types/app-client.ts:806](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L806) +[src/types/app-client.ts:813](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L813) ___ ### fundAppAccount -▸ **fundAppAccount**(`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +▸ **fundAppAccount**(`params`): `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> Funds Algo into the app account for this app. @@ -640,7 +641,7 @@ An alias for `appClient.send.fundAppAccount(params)`. #### Returns -`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> +`Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> The result of the funding @@ -652,13 +653,13 @@ await appClient.fundAppAccount({ amount: algo(1) }) #### Defined in -[src/types/app-client.ts:687](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L687) +[src/types/app-client.ts:694](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L694) ___ ### getABIArgsWithDefaultValues -▸ **getABIArgsWithDefaultValues**(`methodNameOrSignature`, `args`, `sender`): `Promise`\<`undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[]\> +▸ **getABIArgsWithDefaultValues**(`methodNameOrSignature`, `args`, `sender`): `Promise`\<`undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[]\> Returns ABI method arguments ready for a method call params object with default values populated and structs replaced with tuples. @@ -670,22 +671,22 @@ It does this by replacing any `undefined` values with the equivalent default val | Name | Type | Description | | :------ | :------ | :------ | | `methodNameOrSignature` | `string` | The method name or method signature to call if an ABI call is being emitted. e.g. `my_method` or `my_method(unit64,string)bytes` | -| `args` | `undefined` \| (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] | The arguments to the method with `undefined` for any that should be populated with a default value | +| `args` | `undefined` \| (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] | The arguments to the method with `undefined` for any that should be populated with a default value | | `sender` | `ReadableAddress` | - | #### Returns -`Promise`\<`undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[]\> +`Promise`\<`undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[]\> #### Defined in -[src/types/app-client.ts:1050](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1050) +[src/types/app-client.ts:1057](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1057) ___ ### getABIMethod -▸ **getABIMethod**(`methodNameOrSignature`): [`Arc56Method`](types_app_arc56.Arc56Method.md) +▸ **getABIMethod**(`methodNameOrSignature`): `ABIMethod` Returns the ABI Method spec for the given method string for the app represented by this application client instance @@ -697,19 +698,19 @@ Returns the ABI Method spec for the given method string for the app represented #### Returns -[`Arc56Method`](types_app_arc56.Arc56Method.md) +`ABIMethod` A tuple with: [ARC-56 `Method`, algosdk `ABIMethod`] #### Defined in -[src/types/app-client.ts:856](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L856) +[src/types/app-client.ts:863](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L863) ___ ### getABIParams -▸ **getABIParams**\<`TParams`, `TOnComplete`\>(`params`, `onComplete`): `Promise`\<`TParams` & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `TOnComplete` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> +▸ **getABIParams**\<`TParams`, `TOnComplete`\>(`params`, `onComplete`): `Promise`\<`TParams` & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `TOnComplete` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> #### Type parameters @@ -727,11 +728,11 @@ ___ #### Returns -`Promise`\<`TParams` & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `TOnComplete` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> +`Promise`\<`TParams` & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `TOnComplete` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> #### Defined in -[src/types/app-client.ts:1497](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1497) +[src/types/app-client.ts:1487](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1487) ___ @@ -754,7 +755,7 @@ ___ #### Defined in -[src/types/app-client.ts:1167](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1167) +[src/types/app-client.ts:1177](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1177) ___ @@ -782,7 +783,7 @@ ___ #### Defined in -[src/types/app-client.ts:1484](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1484) +[src/types/app-client.ts:1474](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1474) ___ @@ -805,7 +806,7 @@ ___ #### Defined in -[src/types/app-client.ts:1132](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1132) +[src/types/app-client.ts:1142](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1142) ___ @@ -819,16 +820,16 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | -| `call` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | -| `clearState` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | -| `closeOut` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | -| `delete` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | -| `optIn` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | -| `update` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | +| `call` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | +| `clearState` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | +| `closeOut` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | +| `delete` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | +| `optIn` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | +| `update` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | #### Defined in -[src/types/app-client.ts:1196](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1196) +[src/types/app-client.ts:1206](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1206) ___ @@ -843,13 +844,13 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | | `getAll` | () => `Promise`\<`Record`\<`string`, `any`\>\> | - | -| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `getMapValue` | (`mapName`: `string`, `key`: `any`) => `Promise`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `getValue` | (`name`: `string`) => `Promise`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | +| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> | - | +| `getMapValue` | (`mapName`: `string`, `key`: `any`) => `Promise`\<`ABIValue`\> | - | +| `getValue` | (`name`: `string`) => `Promise`\<`ABIValue`\> | - | #### Defined in -[src/types/app-client.ts:1567](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1567) +[src/types/app-client.ts:1557](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1557) ___ @@ -873,7 +874,7 @@ const boxNames = await appClient.getBoxNames() #### Defined in -[src/types/app-client.ts:724](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L724) +[src/types/app-client.ts:731](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L731) ___ @@ -903,7 +904,7 @@ const boxValue = await appClient.getBoxValue('boxName') #### Defined in -[src/types/app-client.ts:737](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L737) +[src/types/app-client.ts:744](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L744) ___ @@ -934,7 +935,7 @@ const boxValue = await appClient.getBoxValueFromABIType('boxName', new ABIUintTy #### Defined in -[src/types/app-client.ts:751](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L751) +[src/types/app-client.ts:758](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L758) ___ @@ -965,7 +966,7 @@ const boxValues = await appClient.getBoxValues() #### Defined in -[src/types/app-client.ts:769](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L769) +[src/types/app-client.ts:776](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L776) ___ @@ -997,7 +998,29 @@ const boxValues = await appClient.getBoxValuesFromABIType(new ABIUintType(32)) #### Defined in -[src/types/app-client.ts:789](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L789) +[src/types/app-client.ts:796](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L796) + +___ + +### getDefaultValueFromStorage + +▸ **getDefaultValueFromStorage**(`defaultValue`, `argName`, `sender`): `Promise`\<`ABIValue`\> + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `defaultValue` | `ABIDefaultValue` | +| `argName` | `string` | +| `sender` | `ReadableAddress` | + +#### Returns + +`Promise`\<`ABIValue`\> + +#### Defined in + +[src/types/app-client.ts:1111](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1111) ___ @@ -1021,7 +1044,7 @@ const globalState = await appClient.getGlobalState() #### Defined in -[src/types/app-client.ts:699](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L699) +[src/types/app-client.ts:706](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L706) ___ @@ -1051,7 +1074,7 @@ const localState = await appClient.getLocalState('ACCOUNT_ADDRESS') #### Defined in -[src/types/app-client.ts:712](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L712) +[src/types/app-client.ts:719](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L719) ___ @@ -1065,16 +1088,16 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | -| `call` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | -| `closeOut` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | -| `delete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | +| `call` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | +| `closeOut` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | +| `delete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | | `fundAppAccount` | (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> | - | -| `optIn` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | -| `update` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | +| `optIn` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | +| `update` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | #### Defined in -[src/types/app-client.ts:1413](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1413) +[src/types/app-client.ts:1403](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1403) ___ @@ -1088,16 +1111,16 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | -| `call` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> | - | -| `closeOut` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> | - | -| `delete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> | - | +| `call` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> | - | +| `closeOut` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> | - | +| `delete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> | - | | `fundAppAccount` | (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `receiver`: `Address` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } | - | -| `optIn` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> | - | -| `update` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `UpdateApplication` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | +| `optIn` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> | - | +| `update` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md)) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `appId`: `bigint` ; `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `UpdateApplication` ; `sender`: `Address` = sender; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | #### Defined in -[src/types/app-client.ts:1229](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1229) +[src/types/app-client.ts:1239](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1239) ___ @@ -1111,16 +1134,16 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | -| `call` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `closeOut` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `delete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `fundAppAccount` | (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | -| `optIn` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `update` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | +| `call` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`CallOnComplete`](../modules/types_app_client.md#calloncomplete) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> | - | +| `closeOut` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> | - | +| `delete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> | - | +| `fundAppAccount` | (`params`: \{ `amount`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `closeRemainderTo?`: `ReadableAddress` ; `coverAppCallInnerTransactionFees?`: `boolean` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `maxRoundsToWaitForConfirmation?`: `number` ; `note?`: `string` \| `Uint8Array` ; `populateAppCallResources?`: `boolean` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `suppressLog?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | +| `optIn` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<`Omit`\<\{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`undefined` \| `ABIValue`\>\> | - | +| `update` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] }\> | - | #### Defined in -[src/types/app-client.ts:1291](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1291) +[src/types/app-client.ts:1301](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1301) ___ @@ -1143,7 +1166,7 @@ if none provided and throws an error if neither provided #### Defined in -[src/types/app-client.ts:1467](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1467) +[src/types/app-client.ts:1457](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1457) ___ @@ -1168,7 +1191,7 @@ or `undefined` otherwise (so the signer is resolved from `AlgorandClient`) #### Defined in -[src/types/app-client.ts:1477](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1477) +[src/types/app-client.ts:1467](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1467) ___ @@ -1181,8 +1204,8 @@ ___ | Name | Type | | :------ | :------ | | `stateGetter` | () => `Promise`\<[`AppState`](../interfaces/types_app.AppState.md)\> | -| `keyGetter` | () => \{ `[name: string]`: [`StorageKey`](../interfaces/types_app_arc56.StorageKey.md); } | -| `mapGetter` | () => \{ `[name: string]`: [`StorageMap`](../interfaces/types_app_arc56.StorageMap.md); } | +| `keyGetter` | () => \{ `[name: string]`: `ABIStorageKey`; } | +| `mapGetter` | () => \{ `[name: string]`: `ABIStorageMap`; } | #### Returns @@ -1191,13 +1214,13 @@ ___ | Name | Type | Description | | :------ | :------ | :------ | | `getAll` | () => `Promise`\<`Record`\<`string`, `any`\>\> | - | -| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct), `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\>\> | - | -| `getMapValue` | (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | -| `getValue` | (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct)\> | - | +| `getMap` | (`mapName`: `string`) => `Promise`\<`Map`\<`ABIValue`, `ABIValue`\>\> | - | +| `getMapValue` | (`mapName`: `string`, `key`: `any`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> | - | +| `getValue` | (`name`: `string`, `appState?`: [`AppState`](../interfaces/types_app.AppState.md)) => `Promise`\<`undefined` \| `ABIValue`\> | - | #### Defined in -[src/types/app-client.ts:1637](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1637) +[src/types/app-client.ts:1627](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1627) ___ @@ -1219,7 +1242,7 @@ Make the given call and catch any errors, augmenting with debugging information #### Defined in -[src/types/app-client.ts:1521](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1521) +[src/types/app-client.ts:1511](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1511) ___ @@ -1241,13 +1264,13 @@ Import source maps for the app. #### Defined in -[src/types/app-client.ts:845](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L845) +[src/types/app-client.ts:852](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L852) ___ ### processMethodCallReturn -▸ **processMethodCallReturn**\<`TReturn`, `TResult`\>(`result`, `method`): `Promise`\<`Omit`\<`TResult`, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`TReturn`\>\> +▸ **processMethodCallReturn**\<`TReturn`, `TResult`\>(`result`): `Promise`\<`Omit`\<`TResult`, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`TReturn`\>\> Checks for decode errors on the SendAppTransactionResult and maps the return value to the specified type on the ARC-56 method, replacing the `return` property with the decoded type. @@ -1258,15 +1281,14 @@ If the return type is an ARC-56 struct then the struct will be returned. | Name | Type | | :------ | :------ | -| `TReturn` | extends `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) | -| `TResult` | extends `Object` = \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } | +| `TReturn` | extends `undefined` \| `ABIValue` | +| `TResult` | extends `Object` = \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIReturn` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } | #### Parameters | Name | Type | Description | | :------ | :------ | :------ | | `result` | `TResult` \| `Promise`\<`TResult`\> | The SendAppTransactionResult to be mapped | -| `method` | [`Arc56Method`](types_app_arc56.Arc56Method.md) | The method that was called | #### Returns @@ -1276,7 +1298,7 @@ The smart contract response with an updated return value #### Defined in -[src/types/app-client.ts:870](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L870) +[src/types/app-client.ts:877](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L877) ___ @@ -1296,7 +1318,7 @@ Will store any generated source maps for later use in debugging. | Name | Type | Description | | :------ | :------ | :------ | -| `appSpec` | [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) | The app spec for the app | +| `appSpec` | `Arc56Contract` | The app spec for the app | | `appManager` | [`AppManager`](types_app_manager.AppManager.md) | The app manager to use for compilation | | `compilation?` | [`AppClientCompilationParams`](../interfaces/types_app_client.AppClientCompilationParams.md) | Any compilation parameters to use | @@ -1308,7 +1330,7 @@ The compiled code and any compilation results (including source maps) #### Defined in -[src/types/app-client.ts:997](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L997) +[src/types/app-client.ts:1004](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1004) ___ @@ -1324,11 +1346,11 @@ error to include source code information via the source map and ARC-56 spec. | Name | Type | Description | | :------ | :------ | :------ | | `e` | `Error` | The error to parse | -| `appSpec` | [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) | The app spec for the app | +| `appSpec` | `Arc56Contract` | The app spec for the app | | `details` | `Object` | Additional information to inform the error | -| `details.approvalSourceInfo?` | [`ProgramSourceInfo`](../interfaces/types_app_arc56.ProgramSourceInfo.md) | ARC56 approval source info | +| `details.approvalSourceInfo?` | `ProgramSourceInfo` | ARC56 approval source info | | `details.approvalSourceMap?` | `ProgramSourceMap` | Approval program source map | -| `details.clearSourceInfo?` | [`ProgramSourceInfo`](../interfaces/types_app_arc56.ProgramSourceInfo.md) | ARC56 clear source info | +| `details.clearSourceInfo?` | `ProgramSourceInfo` | ARC56 clear source info | | `details.clearSourceMap?` | `ProgramSourceMap` | Clear state program source map | | `details.isClearStateProgram?` | `boolean` | Whether or not the code was running the clear state program (defaults to approval program) | | `details.program?` | `Uint8Array` | program bytes | @@ -1341,7 +1363,7 @@ The new error, or if there was no logic error or source map then the wrapped err #### Defined in -[src/types/app-client.ts:913](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L913) +[src/types/app-client.ts:920](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L920) ___ @@ -1360,7 +1382,7 @@ using AlgoKit app deployment semantics (i.e. looking for the app creation transa | `params.algorand` | [`AlgorandClient`](types_algorand_client.AlgorandClient.md) | An `AlgorandClient` instance | | `params.appLookupCache?` | [`AppLookup`](../interfaces/types_app_deployer.AppLookup.md) | 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. | | `params.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 | -| `params.appSpec` | `string` \| [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | +| `params.appSpec` | `string` \| `Arc56Contract` \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | | `params.approvalSourceMap?` | `ProgramSourceMap` | Optional source map for the approval program | | `params.clearSourceMap?` | `ProgramSourceMap` | Optional source map for the clear state program | | `params.creatorAddress` | `ReadableAddress` | The address of the creator account for the app | @@ -1386,7 +1408,7 @@ const appClient = await AppClient.fromCreatorAndName({ #### Defined in -[src/types/app-client.ts:540](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L540) +[src/types/app-client.ts:547](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L547) ___ @@ -1406,7 +1428,7 @@ If no IDs are in the app spec or the network isn't recognised, an error is throw | `params` | `Object` | The parameters to create the app client | | `params.algorand` | [`AlgorandClient`](types_algorand_client.AlgorandClient.md) | An `AlgorandClient` instance | | `params.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 | -| `params.appSpec` | `string` \| [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | +| `params.appSpec` | `string` \| `Arc56Contract` \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | | `params.approvalSourceMap?` | `ProgramSourceMap` | Optional source map for the approval program | | `params.clearSourceMap?` | `ProgramSourceMap` | Optional source map for the clear state program | | `params.defaultSender?` | `ReadableAddress` | Optional address to use for the account to use as the default sender for calls. | @@ -1428,13 +1450,13 @@ const appClient = await AppClient.fromNetwork({ #### Defined in -[src/types/app-client.ts:569](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L569) +[src/types/app-client.ts:576](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L576) ___ ### normaliseAppSpec -▸ **normaliseAppSpec**(`spec`): [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +▸ **normaliseAppSpec**(`spec`): `Arc56Contract` Takes a string or parsed JSON object that could be ARC-32 or ARC-56 format and normalises it into a parsed ARC-56 contract object. @@ -1443,11 +1465,11 @@ normalises it into a parsed ARC-56 contract object. | Name | Type | Description | | :------ | :------ | :------ | -| `spec` | `string` \| [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The spec to normalise | +| `spec` | `string` \| `Arc56Contract` \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The spec to normalise | #### Returns -[`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +`Arc56Contract` The normalised ARC-56 contract object @@ -1459,4 +1481,4 @@ const arc56AppSpec = AppClient.normaliseAppSpec(appSpec) #### Defined in -[src/types/app-client.ts:597](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L597) +[src/types/app-client.ts:604](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L604) diff --git a/docs/code/classes/types_app_deployer.AppDeployer.md b/docs/code/classes/types_app_deployer.AppDeployer.md index bbc950bc8..3a79ac348 100644 --- a/docs/code/classes/types_app_deployer.AppDeployer.md +++ b/docs/code/classes/types_app_deployer.AppDeployer.md @@ -117,8 +117,8 @@ To understand the architecture decisions behind this functionality please see ht | :------ | :------ | :------ | | `deployment` | `Object` | The arguments to control the app deployment | | `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 | -| `deployment.createParams` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Create transaction parameters to use if a create needs to be issued as part of deployment | -| `deployment.deleteParams` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Delete transaction parameters to use if a delete needs to be issued as part of deployment | +| `deployment.createParams` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Create transaction parameters to use if a create needs to be issued as part of deployment | +| `deployment.deleteParams` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Delete transaction parameters to use if a delete needs to be issued as part of deployment | | `deployment.deployTimeParams?` | [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) | Any deploy-time parameters to replace in the TEAL code before compiling it (used if teal code is passed in as a string) | | `deployment.existingDeployments?` | [`AppLookup`](../interfaces/types_app_deployer.AppLookup.md) | Optional cached value of the existing apps for the given creator; use this to avoid an indexer lookup | | `deployment.ignoreCache?` | `boolean` | Whether or not to ignore the app metadata cache and force a lookup, default: use the cache * | @@ -128,7 +128,7 @@ To understand the architecture decisions behind this functionality please see ht | `deployment.onUpdate?` | ``"replace"`` \| ``"update"`` \| ``"fail"`` \| ``"append"`` \| [`OnUpdate`](../enums/types_app.OnUpdate.md) | 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 code * `replace` - Delete the old app and create a new one * `append` - Deploy a new app and leave the old one as is | | `deployment.populateAppCallResources?` | `boolean` | Whether to use simulate to automatically populate app call resources in the txn objects. Defaults to `Config.populateAppCallResources`. | | `deployment.suppressLog?` | `boolean` | Whether to suppress log messages from transaction send, default: do not suppress. | -| `deployment.updateParams` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Update transaction parameters to use if an update needs to be issued as part of deployment | +| `deployment.updateParams` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `ABIMethod` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Update transaction parameters to use if an update needs to be issued as part of deployment | #### Returns diff --git a/docs/code/classes/types_app_factory.AppFactory.md b/docs/code/classes/types_app_factory.AppFactory.md index 753b4f182..91810d759 100644 --- a/docs/code/classes/types_app_factory.AppFactory.md +++ b/docs/code/classes/types_app_factory.AppFactory.md @@ -55,7 +55,6 @@ to interact with those (or other) app instances. - [getSigner](types_app_factory.AppFactory.md#getsigner) - [handleCallErrors](types_app_factory.AppFactory.md#handlecallerrors) - [importSourceMaps](types_app_factory.AppFactory.md#importsourcemaps) -- [parseMethodCallReturn](types_app_factory.AppFactory.md#parsemethodcallreturn) ## Constructors @@ -87,7 +86,7 @@ const appFactory = new AppFactory({ #### Defined in -[src/types/app-factory.ts:194](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L194) +[src/types/app-factory.ts:179](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L179) ## Properties @@ -97,7 +96,7 @@ const appFactory = new AppFactory({ #### Defined in -[src/types/app-factory.ts:170](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L170) +[src/types/app-factory.ts:155](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L155) ___ @@ -107,17 +106,17 @@ ___ #### Defined in -[src/types/app-factory.ts:169](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L169) +[src/types/app-factory.ts:154](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L154) ___ ### \_appSpec -• `Private` **\_appSpec**: [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +• `Private` **\_appSpec**: `Arc56Contract` #### Defined in -[src/types/app-factory.ts:168](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L168) +[src/types/app-factory.ts:153](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L153) ___ @@ -127,7 +126,7 @@ ___ #### Defined in -[src/types/app-factory.ts:178](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L178) +[src/types/app-factory.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L163) ___ @@ -137,7 +136,7 @@ ___ #### Defined in -[src/types/app-factory.ts:179](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L179) +[src/types/app-factory.ts:164](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L164) ___ @@ -147,7 +146,7 @@ ___ #### Defined in -[src/types/app-factory.ts:172](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L172) +[src/types/app-factory.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L157) ___ @@ -157,7 +156,7 @@ ___ #### Defined in -[src/types/app-factory.ts:173](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L173) +[src/types/app-factory.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L158) ___ @@ -167,7 +166,7 @@ ___ #### Defined in -[src/types/app-factory.ts:176](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L176) +[src/types/app-factory.ts:161](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L161) ___ @@ -177,7 +176,7 @@ ___ #### Defined in -[src/types/app-factory.ts:174](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L174) +[src/types/app-factory.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L159) ___ @@ -193,13 +192,13 @@ ___ | `bare.create` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | | `bare.deployDelete` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | | `bare.deployUpdate` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | -| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` = compiled.approvalProgram; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` = compiled.clearStateProgram; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | -| `deployDelete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | -| `deployUpdate` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | +| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` = compiled.approvalProgram; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` = compiled.clearStateProgram; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | +| `deployDelete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | +| `deployUpdate` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | #### Defined in -[src/types/app-factory.ts:181](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L181) +[src/types/app-factory.ts:166](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L166) ___ @@ -209,7 +208,7 @@ ___ #### Defined in -[src/types/app-factory.ts:175](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L175) +[src/types/app-factory.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L160) ___ @@ -219,7 +218,7 @@ ___ #### Defined in -[src/types/app-factory.ts:171](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L171) +[src/types/app-factory.ts:156](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L156) ___ @@ -235,11 +234,11 @@ Create transactions for the current app | :------ | :------ | :------ | | `bare` | \{ `create`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> } | Create bare (raw) transactions for the current app | | `bare.create` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<[`TransactionWrapper`](types_transaction.TransactionWrapper.md)\> | - | -| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | +| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `methodCalls`: `Map`\<`number`, `ABIMethod`\> ; `signers`: `Map`\<`number`, `TransactionSigner`\> ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] }\> | - | #### Defined in -[src/types/app-factory.ts:242](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L242) +[src/types/app-factory.ts:227](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L227) ___ @@ -253,13 +252,13 @@ Send transactions to the current app | Name | Type | Description | | :------ | :------ | :------ | -| `bare` | \{ `create`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return`: `undefined` = undefined; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } }\> } | Send bare (raw) transactions for the current app | -| `bare.create` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return`: `undefined` = undefined; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } }\> | - | -| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } }\> | - | +| `bare` | \{ `create`: (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return`: `undefined` = undefined; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } }\> } | Send bare (raw) transactions for the current app | +| `bare.create` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return`: `undefined` = undefined; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } }\> | - | +| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & [`SendParams`](../interfaces/types_transaction.SendParams.md)) => `Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return`: `undefined` \| `ABIValue` = result.return.returnValue; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } }\> | - | #### Defined in -[src/types/app-factory.ts:270](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L270) +[src/types/app-factory.ts:255](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L255) ## Accessors @@ -275,7 +274,7 @@ Return the algorand client this factory is using. #### Defined in -[src/types/app-factory.ts:218](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L218) +[src/types/app-factory.ts:203](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L203) ___ @@ -291,23 +290,23 @@ The name of the app (from the ARC-32 / ARC-56 app spec or override). #### Defined in -[src/types/app-factory.ts:208](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L208) +[src/types/app-factory.ts:193](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L193) ___ ### appSpec -• `get` **appSpec**(): [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +• `get` **appSpec**(): `Arc56Contract` The ARC-56 app spec being used #### Returns -[`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +`Arc56Contract` #### Defined in -[src/types/app-factory.ts:213](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L213) +[src/types/app-factory.ts:198](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L198) ___ @@ -329,9 +328,9 @@ A good mental model for this is that these parameters represent a deferred trans | `bare.create` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | | `bare.deployDelete` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | | `bare.deployUpdate` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | -| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` = compiled.approvalProgram; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` = compiled.clearStateProgram; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | -| `deployDelete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | -| `deployUpdate` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | +| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` = compiled.approvalProgram; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` = compiled.clearStateProgram; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | +| `deployDelete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | +| `deployUpdate` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | **`Example`** @@ -350,7 +349,7 @@ await appClient.send.call({method: 'my_method', args: [createAppParams]}) #### Defined in -[src/types/app-factory.ts:237](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L237) +[src/types/app-factory.ts:222](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L222) ## Methods @@ -386,13 +385,13 @@ const result = await factory.compile() #### Defined in -[src/types/app-factory.ts:616](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L616) +[src/types/app-factory.ts:602](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L602) ___ ### deploy -▸ **deploy**(`params`): `Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"create"`` ; `return`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"update"`` ; `return`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteResult`: [`ConfirmedTransactionResult`](../interfaces/types_transaction.ConfirmedTransactionResult.md) ; `deleteReturn`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"replace"`` ; `return`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `deleted`: `boolean` ; `name`: `string` ; `operationPerformed`: ``"nothing"`` ; `return`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } }\> +▸ **deploy**(`params`): `Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"create"`` ; `return`: `undefined` \| `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"update"`` ; `return`: `undefined` \| `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteResult`: [`ConfirmedTransactionResult`](../interfaces/types_transaction.ConfirmedTransactionResult.md) ; `deleteReturn`: `undefined` \| `ABIValue` ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"replace"`` ; `return`: `undefined` \| `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` ; `deleted`: `boolean` ; `name`: `string` ; `operationPerformed`: ``"nothing"`` ; `return`: `undefined` \| `ABIValue` ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } }\> Idempotently deploy (create if not exists, update if changed) an app against the given name for the given creator account, including deploy-time TEAL template placeholder substitutions (if specified). @@ -409,9 +408,9 @@ Idempotently deploy (create if not exists, update if changed) an app against the | `params` | `Object` | The arguments to control the app deployment | | `params.appName?` | `string` | Override the app name for this deployment | | `params.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 | -| `params.createParams?` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Create transaction parameters to use if a create needs to be issued as part of deployment | +| `params.createParams?` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Create transaction parameters to use if a create needs to be issued as part of deployment | | `params.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. | -| `params.deleteParams?` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Delete transaction parameters to use if a create needs to be issued as part of deployment | +| `params.deleteParams?` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Delete transaction parameters to use if a create needs to be issued as part of deployment | | `params.deployTimeParams?` | [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) | Any deploy-time parameters to replace in the TEAL code before compiling it (used if teal code is passed in as a string) | | `params.existingDeployments?` | [`AppLookup`](../interfaces/types_app_deployer.AppLookup.md) | Optional cached value of the existing apps for the given creator; use this to avoid an indexer lookup | | `params.ignoreCache?` | `boolean` | Whether or not to ignore the app metadata cache and force a lookup, default: use the cache * | @@ -421,11 +420,11 @@ Idempotently deploy (create if not exists, update if changed) an app against the | `params.populateAppCallResources?` | `boolean` | Whether to use simulate to automatically populate app call resources in the txn objects. Defaults to `Config.populateAppCallResources`. | | `params.suppressLog?` | `boolean` | Whether to suppress log messages from transaction send, default: do not suppress. | | `params.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. | -| `params.updateParams?` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Update transaction parameters to use if a create needs to be issued as part of deployment | +| `params.updateParams?` | \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } \| \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } | Update transaction parameters to use if a create needs to be issued as part of deployment | #### Returns -`Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"create"`` ; `return`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"update"`` ; `return`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteResult`: [`ConfirmedTransactionResult`](../interfaces/types_transaction.ConfirmedTransactionResult.md) ; `deleteReturn`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"replace"`` ; `return`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `deleted`: `boolean` ; `name`: `string` ; `operationPerformed`: ``"nothing"`` ; `return`: `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } }\> +`Promise`\<\{ `appClient`: [`AppClient`](types_app_client.AppClient.md) ; `result`: \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"create"`` ; `return`: `undefined` \| `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"update"`` ; `return`: `undefined` \| `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteResult`: [`ConfirmedTransactionResult`](../interfaces/types_transaction.ConfirmedTransactionResult.md) ; `deleteReturn`: `undefined` \| `ABIValue` ; `deleted`: `boolean` ; `groupId`: `undefined` \| `string` ; `name`: `string` ; `operationPerformed`: ``"replace"`` ; `return`: `undefined` \| `ABIValue` ; `returns?`: `ABIReturn`[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } \| \{ `appAddress`: `Address` ; `appId`: `bigint` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `createdMetadata`: [`AppDeployMetadata`](../interfaces/types_app.AppDeployMetadata.md) ; `createdRound`: `bigint` ; `deletable?`: `boolean` ; `deleteReturn`: `undefined` \| `ABIValue` ; `deleted`: `boolean` ; `name`: `string` ; `operationPerformed`: ``"nothing"`` ; `return`: `undefined` \| `ABIValue` ; `updatable?`: `boolean` ; `updatedRound`: `bigint` ; `version`: `string` } }\> The app client and the result of the deployment @@ -457,7 +456,7 @@ const { appClient, result } = await factory.deploy({ #### Defined in -[src/types/app-factory.ts:368](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L368) +[src/types/app-factory.ts:356](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L356) ___ @@ -475,7 +474,7 @@ The source maps #### Defined in -[src/types/app-factory.ts:497](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L497) +[src/types/app-factory.ts:483](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L483) ___ @@ -501,13 +500,13 @@ The new error, or if there was no logic error or source map then the wrapped err #### Defined in -[src/types/app-factory.ts:485](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L485) +[src/types/app-factory.ts:471](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L471) ___ ### getABIParams -▸ **getABIParams**\<`TParams`, `TOnComplete`\>(`params`, `onComplete`): `TParams` & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `TOnComplete` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } +▸ **getABIParams**\<`TParams`, `TOnComplete`\>(`params`, `onComplete`): `TParams` & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `TOnComplete` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } #### Type parameters @@ -525,11 +524,11 @@ ___ #### Returns -`TParams` & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `TOnComplete` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } +`TParams` & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `TOnComplete` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } #### Defined in -[src/types/app-factory.ts:641](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L641) +[src/types/app-factory.ts:627](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L627) ___ @@ -571,7 +570,7 @@ const appClient = factory.getAppClientByCreatorAndName({ creatorAddress: 'CREATO #### Defined in -[src/types/app-factory.ts:466](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L466) +[src/types/app-factory.ts:452](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L452) ___ @@ -610,7 +609,7 @@ const appClient = factory.getAppClientById({ appId: 12345n }) #### Defined in -[src/types/app-factory.ts:440](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L440) +[src/types/app-factory.ts:426](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L426) ___ @@ -638,28 +637,28 @@ ___ #### Defined in -[src/types/app-factory.ts:629](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L629) +[src/types/app-factory.ts:615](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L615) ___ ### getCreateABIArgsWithDefaultValues -▸ **getCreateABIArgsWithDefaultValues**(`methodNameOrSignature`, `args`): `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] +▸ **getCreateABIArgsWithDefaultValues**(`methodNameOrSignature`, `args`): `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] #### Parameters | Name | Type | | :------ | :------ | | `methodNameOrSignature` | `string` | -| `args` | `undefined` \| (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] | +| `args` | `undefined` \| (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] | #### Returns -`undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] +`undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] #### Defined in -[src/types/app-factory.ts:660](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L660) +[src/types/app-factory.ts:646](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L646) ___ @@ -679,7 +678,7 @@ ___ #### Defined in -[src/types/app-factory.ts:519](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L519) +[src/types/app-factory.ts:505](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L505) ___ @@ -697,13 +696,13 @@ ___ | `bare.create` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` ; `compiledApproval?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `compiledClear?`: [`CompiledTeal`](../interfaces/types_app.CompiledTeal.md) ; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | | `bare.deployDelete` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | | `bare.deployUpdate` | (`params?`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | -| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` = compiled.approvalProgram; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` = compiled.clearStateProgram; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | -| `deployDelete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | -| `deployUpdate` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument) \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: [`Arc56Method`](types_app_arc56.Arc56Method.md) ; `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | +| `create` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `deletable?`: `boolean` ; `deployTimeParams?`: [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` }) => `Promise`\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `Uint8Array` = compiled.approvalProgram; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `clearStateProgram`: `Uint8Array` = compiled.clearStateProgram; `deletable?`: `boolean` ; `deployTimeParams`: `undefined` \| [`TealTemplateParams`](../interfaces/types_app.TealTemplateParams.md) ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `schema`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `updatable?`: `boolean` ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `extraProgramPages?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... \| ... \| ... \| ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: ... \| ... ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ... \| ... ; `accountReferences?`: ... \| ... ; `appId`: `bigint` ; `appReferences?`: ... \| ... ; `approvalProgram`: ... \| ... ; `args?`: ... \| ... ; `assetReferences?`: ... \| ... ; `boxReferences?`: ... \| ... ; `clearStateProgram`: ... \| ... ; `extraFee?`: ... \| ... ; `firstValidRound?`: ... \| ... ; `lastValidRound?`: ... \| ... ; `lease?`: ... \| ... \| ... ; `maxFee?`: ... \| ... ; `note?`: ... \| ... \| ... ; `onComplete?`: ... \| ... ; `rejectVersion?`: ... \| ... ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: ... \| ... \| ... ; `staticFee?`: ... \| ... ; `validityWindow?`: ... \| ... \| ... }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` }\> | - | +| `deployDelete` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `DeleteApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | +| `deployUpdate` | (`params`: \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }) => \{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `args?`: (`undefined` \| `ABIValue` \| [`AppMethodCallTransactionArgument`](../modules/types_composer.md#appmethodcalltransactionargument))[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `method`: `string` ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `OnApplicationComplete` ; `rejectVersion?`: `number` ; `rekeyTo?`: `ReadableAddress` ; `sender?`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` } & \{ `args`: `undefined` \| (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: ... ; `globalInts`: ... ; `localByteSlices`: ... ; `localInts`: ... } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: ...[] ; `accountReferences?`: ...[] ; `appId`: `bigint` ; `appReferences?`: ...[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: ...[] ; `assetReferences?`: ...[] ; `boxReferences?`: ...[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] ; `method`: `ABIMethod` ; `onComplete`: `UpdateApplication` ; `sender`: `Address` ; `signer`: `undefined` \| `AddressWithSigner` \| `TransactionSigner` } | - | #### Defined in -[src/types/app-factory.ts:533](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L533) +[src/types/app-factory.ts:519](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L519) ___ @@ -726,7 +725,7 @@ if none provided and throws an error if neither provided #### Defined in -[src/types/app-factory.ts:688](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L688) +[src/types/app-factory.ts:677](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L677) ___ @@ -751,7 +750,7 @@ or `undefined` otherwise (so the signer is resolved from `AlgorandClient`) #### Defined in -[src/types/app-factory.ts:698](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L698) +[src/types/app-factory.ts:687](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L687) ___ @@ -779,7 +778,7 @@ Make the given call and catch any errors, augmenting with debugging information #### Defined in -[src/types/app-factory.ts:593](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L593) +[src/types/app-factory.ts:579](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L579) ___ @@ -801,39 +800,4 @@ Import source maps for the app. #### Defined in -[src/types/app-factory.ts:514](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L514) - -___ - -### parseMethodCallReturn - -▸ **parseMethodCallReturn**\<`TReturn`, `TResult`\>(`result`, `method`): `Promise`\<`Omit`\<`TResult`, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`TReturn`\>\> - -Checks for decode errors on the SendAppTransactionResult and maps the return value to the specified type -on the ARC-56 method. - -If the return type is a struct then the struct will be returned. - -#### Type parameters - -| Name | Type | -| :------ | :------ | -| `TReturn` | extends `undefined` \| `ABIValue` \| [`ABIStruct`](../modules/types_app_arc56.md#abistruct) | -| `TResult` | extends `Object` = \{ `confirmation`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper) ; `confirmations`: [`PendingTransactionResponseWrapper`](../modules/types_transaction.md#pendingtransactionresponsewrapper)[] ; `groupId`: `undefined` \| `string` ; `return?`: [`ABIReturn`](../modules/types_app.md#abireturn) ; `returns?`: [`ABIReturn`](../modules/types_app.md#abireturn)[] ; `transaction`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md) ; `transactions`: [`TransactionWrapper`](types_transaction.TransactionWrapper.md)[] ; `txIds`: `string`[] } | - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `result` | `TResult` \| `Promise`\<`TResult`\> | The SendAppTransactionResult to be mapped | -| `method` | [`Arc56Method`](types_app_arc56.Arc56Method.md) | The method that was called | - -#### Returns - -`Promise`\<`Omit`\<`TResult`, ``"return"``\> & [`AppReturn`](../modules/types_app.md#appreturn)\<`TReturn`\>\> - -The smart contract response with an updated return value - -#### Defined in - -[src/types/app-factory.ts:715](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L715) +[src/types/app-factory.ts:500](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L500) diff --git a/docs/code/classes/types_app_manager.AppManager.md b/docs/code/classes/types_app_manager.AppManager.md index b3065b78e..74e62dd76 100644 --- a/docs/code/classes/types_app_manager.AppManager.md +++ b/docs/code/classes/types_app_manager.AppManager.md @@ -58,7 +58,7 @@ Creates an `AppManager` #### Defined in -[src/types/app-manager.ts:109](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L109) +[src/types/app-manager.ts:108](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L108) ## Properties @@ -68,7 +68,7 @@ Creates an `AppManager` #### Defined in -[src/types/app-manager.ts:102](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L102) +[src/types/app-manager.ts:101](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L101) ___ @@ -78,7 +78,7 @@ ___ #### Defined in -[src/types/app-manager.ts:103](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L103) +[src/types/app-manager.ts:102](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L102) ## Methods @@ -113,7 +113,7 @@ const compiled = await appManager.compileTeal(tealProgram) #### Defined in -[src/types/app-manager.ts:128](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L128) +[src/types/app-manager.ts:127](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L127) ___ @@ -153,7 +153,7 @@ const compiled = await appManager.compileTealTemplate(tealTemplate, { TMPL_APP_I #### Defined in -[src/types/app-manager.ts:164](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L164) +[src/types/app-manager.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L163) ___ @@ -183,7 +183,7 @@ const boxNames = await appManager.getBoxNames(12353n); #### Defined in -[src/types/app-manager.ts:281](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L281) +[src/types/app-manager.ts:280](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L280) ___ @@ -214,7 +214,7 @@ const boxValue = await appManager.getBoxValue(12353n, 'boxName'); #### Defined in -[src/types/app-manager.ts:302](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L302) +[src/types/app-manager.ts:301](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L301) ___ @@ -244,7 +244,7 @@ const boxValue = await appManager.getBoxValueFromABIType({ appId: 12353n, boxNam #### Defined in -[src/types/app-manager.ts:332](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L332) +[src/types/app-manager.ts:331](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L331) ___ @@ -275,7 +275,7 @@ const boxValues = await appManager.getBoxValues(12353n, ['boxName1', 'boxName2'] #### Defined in -[src/types/app-manager.ts:319](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L319) +[src/types/app-manager.ts:318](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L318) ___ @@ -305,7 +305,7 @@ const boxValues = await appManager.getBoxValuesFromABIType({ appId: 12353n, boxN #### Defined in -[src/types/app-manager.ts:347](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L347) +[src/types/app-manager.ts:346](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L346) ___ @@ -335,7 +335,7 @@ const appInfo = await appManager.getById(12353n); #### Defined in -[src/types/app-manager.ts:205](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L205) +[src/types/app-manager.ts:204](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L204) ___ @@ -366,7 +366,7 @@ const compiled = appManager.getCompilationResult(tealProgram) #### Defined in -[src/types/app-manager.ts:190](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L190) +[src/types/app-manager.ts:189](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L189) ___ @@ -396,7 +396,7 @@ const globalState = await appManager.getGlobalState(12353n); #### Defined in -[src/types/app-manager.ts:237](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L237) +[src/types/app-manager.ts:236](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L236) ___ @@ -427,7 +427,7 @@ const localState = await appManager.getLocalState(12353n, 'ACCOUNTADDRESS'); #### Defined in -[src/types/app-manager.ts:252](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L252) +[src/types/app-manager.ts:251](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L251) ___ @@ -458,13 +458,13 @@ const stateValues = AppManager.decodeAppState(state); #### Defined in -[src/types/app-manager.ts:379](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L379) +[src/types/app-manager.ts:378](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L378) ___ ### getABIReturn -▸ **getABIReturn**(`confirmation`, `method`): `undefined` \| [`ABIReturn`](../modules/types_app.md#abireturn) +▸ **getABIReturn**(`confirmation`, `method`): `undefined` \| `ABIReturn` Returns any ABI return values for the given app call arguments and transaction confirmation. @@ -472,12 +472,12 @@ Returns any ABI return values for the given app call arguments and transaction c | Name | Type | Description | | :------ | :------ | :------ | -| `confirmation` | `undefined` \| `PendingTransactionResponse` | The transaction confirmation from algod | +| `confirmation` | `PendingTransactionResponse` | The transaction confirmation from algod | | `method` | `undefined` \| `ABIMethod` | The ABI method | #### Returns -`undefined` \| [`ABIReturn`](../modules/types_app.md#abireturn) +`undefined` \| `ABIReturn` The return value for the method call @@ -489,7 +489,7 @@ const returnValue = AppManager.getABIReturn(confirmation, ABIMethod.fromSignatur #### Defined in -[src/types/app-manager.ts:432](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L432) +[src/types/app-manager.ts:431](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L431) ___ @@ -519,7 +519,7 @@ const boxRef = AppManager.getBoxReference('boxName'); #### Defined in -[src/types/app-manager.ts:361](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L361) +[src/types/app-manager.ts:360](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L360) ___ @@ -539,7 +539,7 @@ ___ #### Defined in -[src/types/app-manager.ts:467](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L467) +[src/types/app-manager.ts:463](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L463) ___ @@ -578,7 +578,7 @@ const tealCode = AppManager.replaceTealTemplateDeployTimeControlParams(tealTempl #### Defined in -[src/types/app-manager.ts:496](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L496) +[src/types/app-manager.ts:492](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L492) ___ @@ -611,7 +611,7 @@ const tealCode = AppManager.replaceTealTemplateParams(tealTemplate, { TMPL_APP_I #### Defined in -[src/types/app-manager.ts:531](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L531) +[src/types/app-manager.ts:527](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L527) ___ @@ -641,4 +641,4 @@ const stripped = AppManager.stripTealComments(tealProgram); #### Defined in -[src/types/app-manager.ts:570](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L570) +[src/types/app-manager.ts:566](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L566) diff --git a/docs/code/classes/types_client_manager.ClientManager.md b/docs/code/classes/types_client_manager.ClientManager.md index c27f07c74..932646a15 100644 --- a/docs/code/classes/types_client_manager.ClientManager.md +++ b/docs/code/classes/types_client_manager.ClientManager.md @@ -250,7 +250,7 @@ using AlgoKit app deployment semantics (i.e. looking for the app creation transa | `params` | `Object` | The parameters to create the app client | | `params.appLookupCache?` | [`AppLookup`](../interfaces/types_app_deployer.AppLookup.md) | 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. | | `params.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 | -| `params.appSpec` | `string` \| [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | +| `params.appSpec` | `string` \| `Arc56Contract` \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | | `params.approvalSourceMap?` | `ProgramSourceMap` | Optional source map for the approval program | | `params.clearSourceMap?` | `ProgramSourceMap` | Optional source map for the clear state program | | `params.creatorAddress` | `ReadableAddress` | The address of the creator account for the app | @@ -293,7 +293,7 @@ Returns a new `AppClient` client for managing calls and state for an ARC-32/ARC- | `params` | `Object` | The parameters to create the app client | | `params.appId` | `bigint` | The ID of the app instance this client should make calls against. | | `params.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 | -| `params.appSpec` | `string` \| [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | +| `params.appSpec` | `string` \| `Arc56Contract` \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | | `params.approvalSourceMap?` | `ProgramSourceMap` | Optional source map for the approval program | | `params.clearSourceMap?` | `ProgramSourceMap` | Optional source map for the clear state program | | `params.defaultSender?` | `ReadableAddress` | Optional address to use for the account to use as the default sender for calls. | @@ -336,7 +336,7 @@ If no IDs are in the app spec or the network isn't recognised, an error is throw | :------ | :------ | :------ | | `params` | `Object` | The parameters to create the app client | | `params.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 | -| `params.appSpec` | `string` \| [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | +| `params.appSpec` | `string` \| `Arc56Contract` \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | | `params.approvalSourceMap?` | `ProgramSourceMap` | Optional source map for the approval program | | `params.clearSourceMap?` | `ProgramSourceMap` | Optional source map for the clear state program | | `params.defaultSender?` | `ReadableAddress` | Optional address to use for the account to use as the default sender for calls. | @@ -375,7 +375,7 @@ Returns a new `AppFactory` client | :------ | :------ | :------ | | `params` | `Object` | The parameters to create the app factory | | `params.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. | -| `params.appSpec` | `string` \| [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | +| `params.appSpec` | `string` \| `Arc56Contract` \| [`AppSpec`](../interfaces/types_app_spec.AppSpec.md) | The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` * Parsed JSON ARC-32 `AppSpec` * Raw JSON string (in either ARC-56 or ARC-32 format) | | `params.defaultSender?` | `ReadableAddress` | Optional address to use for the account to use as the default sender for calls. | | `params.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`). | | `params.deletable?` | `boolean` | Whether or not the contract should have deploy-time permanence control set, undefined = ignore. If specified here will get used in calls to `deploy` and `create` calls unless overridden in those calls. Useful if you want to vend multiple contracts from the same factory without specifying this value for each call. | diff --git a/docs/code/classes/types_composer.TransactionComposer.md b/docs/code/classes/types_composer.TransactionComposer.md index c55416d6a..c03e149fa 100644 --- a/docs/code/classes/types_composer.TransactionComposer.md +++ b/docs/code/classes/types_composer.TransactionComposer.md @@ -354,7 +354,7 @@ Note: we recommend using app clients to make it easier to make app calls. | `params.accountReferences?` | `ReadableAddress`[] | Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.appId` | `bigint` | ID of the application; 0 if the application is being created. | | `params.appReferences?` | `bigint`[] | The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | -| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | +| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | | `params.assetReferences?` | `bigint`[] | The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.boxReferences?` | ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] | Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). 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. | | `params.extraFee?` | [`AlgoAmount`](types_amount.AlgoAmount.md) | The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees. | @@ -543,7 +543,7 @@ Note: we recommend using app clients to make it easier to make app calls. | `params.accountReferences?` | `ReadableAddress`[] | Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.appReferences?` | `bigint`[] | The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.approvalProgram` | `string` \| `Uint8Array` | The program to execute for all OnCompletes other than ClearState as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). | -| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | +| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | | `params.assetReferences?` | `bigint`[] | The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.boxReferences?` | ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] | Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). 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. | | `params.clearStateProgram` | `string` \| `Uint8Array` | The program to execute for ClearState OnComplete as raw teal that will be compiled (string) or compiled teal (encoded as a byte array (Uint8Array)). | @@ -706,7 +706,7 @@ Note: we recommend using app clients to make it easier to make app calls. | `params.accountReferences?` | `ReadableAddress`[] | Any account addresses to add to the [accounts array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.appId` | `bigint` | ID of the application; 0 if the application is being created. | | `params.appReferences?` | `bigint`[] | The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | -| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | +| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | | `params.assetReferences?` | `bigint`[] | The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.boxReferences?` | ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] | Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). 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. | | `params.extraFee?` | [`AlgoAmount`](types_amount.AlgoAmount.md) | The fee to pay IN ADDITION to the suggested fee. Useful for manually covering inner transaction fees. | @@ -878,7 +878,7 @@ Note: we recommend using app clients to make it easier to make app calls. | `params.appId` | `bigint` | ID of the application; 0 if the application is being created. | | `params.appReferences?` | `bigint`[] | The ID of any apps to load to the [foreign apps array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.approvalProgram` | `string` \| `Uint8Array` | The program to execute for all OnCompletes other than ClearState as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) | -| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| `Promise`\<`Transaction`\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | +| `params.args?` | (`undefined` \| `Transaction` \| `ABIValue` \| `Promise`\<`Transaction`\> \| [`TransactionWithSigner`](../interfaces/index.TransactionWithSigner.md) \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `extraProgramPages?`: `number` ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `NoOp` \| `OptIn` \| `CloseOut` \| `UpdateApplication` \| `DeleteApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `schema?`: \{ `globalByteSlices`: `number` ; `globalInts`: `number` ; `localByteSlices`: `number` ; `localInts`: `number` } ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<\{ `accessReferences?`: `AccessReference`[] ; `accountReferences?`: `ReadableAddress`[] ; `appId`: `bigint` ; `appReferences?`: `bigint`[] ; `approvalProgram`: `string` \| `Uint8Array` ; `args?`: `Uint8Array`[] ; `assetReferences?`: `bigint`[] ; `boxReferences?`: BoxIdentifier \| BoxReference[] ; `clearStateProgram`: `string` \| `Uint8Array` ; `extraFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `firstValidRound?`: `bigint` ; `lastValidRound?`: `bigint` ; `lease?`: `string` \| `Uint8Array` ; `maxFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `note?`: `string` \| `Uint8Array` ; `onComplete?`: `UpdateApplication` ; `rejectVersion?`: `number` ; `rekeyTo?`: ReadableAddress \| undefined ; `sender`: `ReadableAddress` ; `signer?`: `AddressWithSigner` \| `TransactionSigner` ; `staticFee?`: [`AlgoAmount`](types_amount.AlgoAmount.md) ; `validityWindow?`: `number` \| `bigint` }\> \| [`AppMethodCall`](../modules/types_composer.md#appmethodcall)\<[`AppMethodCallParams`](../modules/types_composer.md#appmethodcallparams)\>)[] | Arguments to the ABI method, either: * An ABI value * A transaction with explicit signer * A transaction (where the signer will be automatically assigned) * An unawaited transaction (e.g. from algorand.createTransaction.{transactionType}()) * Another method call (via method call params object) * undefined (this represents a placeholder transaction argument that is fulfilled by another method call argument) | | `params.assetReferences?` | `bigint`[] | The ID of any assets to load to the [foreign assets array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). | | `params.boxReferences?` | ([`BoxIdentifier`](../modules/types_app_manager.md#boxidentifier) \| [`BoxReference`](../interfaces/types_app_manager.BoxReference.md))[] | Any boxes to load to the [boxes array](https://dev.algorand.co/concepts/smart-contracts/resource-usage#what-are-reference-arrays). 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. | | `params.clearStateProgram` | `string` \| `Uint8Array` | The program to execute for ClearState OnComplete as raw teal (string) or compiled teal (base 64 encoded as a byte array (Uint8Array)) | @@ -1723,7 +1723,7 @@ ___ ### parseAbiReturnValues -▸ **parseAbiReturnValues**(`confirmations`): [`ABIReturn`](../modules/types_app.md#abireturn)[] +▸ **parseAbiReturnValues**(`confirmations`): `ABIReturn`[] #### Parameters @@ -1733,7 +1733,7 @@ ___ #### Returns -[`ABIReturn`](../modules/types_app.md#abireturn)[] +`ABIReturn`[] #### Defined in diff --git a/docs/code/enums/types_app.OnSchemaBreak.md b/docs/code/enums/types_app.OnSchemaBreak.md index b045f9d54..cb1ea37e6 100644 --- a/docs/code/enums/types_app.OnSchemaBreak.md +++ b/docs/code/enums/types_app.OnSchemaBreak.md @@ -24,7 +24,7 @@ Create a new app #### Defined in -[src/types/app.ts:220](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L220) +[src/types/app.ts:211](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L211) ___ @@ -36,7 +36,7 @@ Fail the deployment #### Defined in -[src/types/app.ts:216](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L216) +[src/types/app.ts:207](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L207) ___ @@ -48,4 +48,4 @@ Delete the app and create a new one in its place #### Defined in -[src/types/app.ts:218](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L218) +[src/types/app.ts:209](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L209) diff --git a/docs/code/enums/types_app.OnUpdate.md b/docs/code/enums/types_app.OnUpdate.md index 4ef3b7413..c1d677d95 100644 --- a/docs/code/enums/types_app.OnUpdate.md +++ b/docs/code/enums/types_app.OnUpdate.md @@ -25,7 +25,7 @@ Create a new app #### Defined in -[src/types/app.ts:210](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L210) +[src/types/app.ts:201](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L201) ___ @@ -37,7 +37,7 @@ Fail the deployment #### Defined in -[src/types/app.ts:204](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L204) +[src/types/app.ts:195](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L195) ___ @@ -49,7 +49,7 @@ Delete the app and create a new one in its place #### Defined in -[src/types/app.ts:208](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L208) +[src/types/app.ts:199](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L199) ___ @@ -61,4 +61,4 @@ Update the app #### Defined in -[src/types/app.ts:206](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L206) +[src/types/app.ts:197](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L197) diff --git a/docs/code/interfaces/index.TransactionWithSigner.md b/docs/code/interfaces/index.TransactionWithSigner.md index 5670ea863..ded4e5789 100644 --- a/docs/code/interfaces/index.TransactionWithSigner.md +++ b/docs/code/interfaces/index.TransactionWithSigner.md @@ -23,7 +23,7 @@ A transaction signer that can authorize txn #### Defined in -[src/transaction/transaction.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L20) +[src/transaction/transaction.ts:18](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L18) ___ @@ -35,4 +35,4 @@ An unsigned transaction #### Defined in -[src/transaction/transaction.ts:18](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L18) +[src/transaction/transaction.ts:16](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L16) diff --git a/docs/code/interfaces/types_app.AppCallParams.md b/docs/code/interfaces/types_app.AppCallParams.md index 583ded028..c89586f26 100644 --- a/docs/code/interfaces/types_app.AppCallParams.md +++ b/docs/code/interfaces/types_app.AppCallParams.md @@ -41,7 +41,7 @@ The id of the app to call #### Defined in -[src/types/app.ts:99](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L99) +[src/types/app.ts:100](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L100) ___ @@ -53,7 +53,7 @@ The arguments passed in to the app call #### Defined in -[src/types/app.ts:109](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L109) +[src/types/app.ts:110](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L110) ___ @@ -65,7 +65,7 @@ The type of call, everything except create (see `createApp`) and update (see `up #### Defined in -[src/types/app.ts:101](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L101) +[src/types/app.ts:102](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L102) ___ @@ -93,7 +93,7 @@ The account to make the call from #### Defined in -[src/types/app.ts:103](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L103) +[src/types/app.ts:104](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L104) ___ @@ -137,7 +137,7 @@ The (optional) transaction note #### Defined in -[src/types/app.ts:107](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L107) +[src/types/app.ts:108](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L108) ___ @@ -243,4 +243,4 @@ Optional transaction parameters #### Defined in -[src/types/app.ts:105](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L105) +[src/types/app.ts:106](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L106) diff --git a/docs/code/interfaces/types_app.AppCallTransactionResultOfType.md b/docs/code/interfaces/types_app.AppCallTransactionResultOfType.md index 35acf39db..b0f17f90d 100644 --- a/docs/code/interfaces/types_app.AppCallTransactionResultOfType.md +++ b/docs/code/interfaces/types_app.AppCallTransactionResultOfType.md @@ -73,7 +73,7 @@ If an ABI method was called the processed return value #### Defined in -[src/types/app.ts:142](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L142) +[src/types/app.ts:143](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L143) ___ diff --git a/docs/code/interfaces/types_app.AppCompilationResult.md b/docs/code/interfaces/types_app.AppCompilationResult.md index 6a36ee132..aed8c2eac 100644 --- a/docs/code/interfaces/types_app.AppCompilationResult.md +++ b/docs/code/interfaces/types_app.AppCompilationResult.md @@ -23,7 +23,7 @@ The result of compiling the approval program #### Defined in -[src/types/app.ts:226](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L226) +[src/types/app.ts:217](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L217) ___ @@ -35,4 +35,4 @@ The result of compiling the clear state program #### Defined in -[src/types/app.ts:228](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L228) +[src/types/app.ts:219](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L219) diff --git a/docs/code/interfaces/types_app.AppDeployMetadata.md b/docs/code/interfaces/types_app.AppDeployMetadata.md index 24c5d7e9e..04299ebd7 100644 --- a/docs/code/interfaces/types_app.AppDeployMetadata.md +++ b/docs/code/interfaces/types_app.AppDeployMetadata.md @@ -33,7 +33,7 @@ Whether or not the app is deletable / permanent / unspecified #### Defined in -[src/types/app.ts:167](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L167) +[src/types/app.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L158) ___ @@ -45,7 +45,7 @@ The unique name identifier of the app within the creator account #### Defined in -[src/types/app.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L163) +[src/types/app.ts:154](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L154) ___ @@ -57,7 +57,7 @@ Whether or not the app is updatable / immutable / unspecified #### Defined in -[src/types/app.ts:169](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L169) +[src/types/app.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L160) ___ @@ -69,4 +69,4 @@ The version of app that is / will be deployed #### Defined in -[src/types/app.ts:165](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L165) +[src/types/app.ts:156](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L156) diff --git a/docs/code/interfaces/types_app.AppLookup.md b/docs/code/interfaces/types_app.AppLookup.md index 9e6f2ac16..e4c0b466b 100644 --- a/docs/code/interfaces/types_app.AppLookup.md +++ b/docs/code/interfaces/types_app.AppLookup.md @@ -21,7 +21,7 @@ A lookup of name -> Algorand app for a creator #### Defined in -[src/types/app.ts:187](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L187) +[src/types/app.ts:178](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L178) ___ @@ -31,4 +31,4 @@ ___ #### Defined in -[src/types/app.ts:186](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L186) +[src/types/app.ts:177](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L177) diff --git a/docs/code/interfaces/types_app.AppMetadata.md b/docs/code/interfaces/types_app.AppMetadata.md index 5b1b417bc..9606288cd 100644 --- a/docs/code/interfaces/types_app.AppMetadata.md +++ b/docs/code/interfaces/types_app.AppMetadata.md @@ -43,7 +43,7 @@ The Algorand address of the account associated with the app #### Defined in -[src/types/app.ts:38](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L38) +[src/types/app.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L39) ___ @@ -59,7 +59,7 @@ The id of the app #### Defined in -[src/types/app.ts:36](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L36) +[src/types/app.ts:37](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L37) ___ @@ -71,7 +71,7 @@ The metadata when the app was created #### Defined in -[src/types/app.ts:179](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L179) +[src/types/app.ts:170](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L170) ___ @@ -83,7 +83,7 @@ The round the app was created #### Defined in -[src/types/app.ts:175](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L175) +[src/types/app.ts:166](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L166) ___ @@ -99,7 +99,7 @@ Whether or not the app is deletable / permanent / unspecified #### Defined in -[src/types/app.ts:167](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L167) +[src/types/app.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L158) ___ @@ -111,7 +111,7 @@ Whether or not the app is deleted #### Defined in -[src/types/app.ts:181](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L181) +[src/types/app.ts:172](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L172) ___ @@ -127,7 +127,7 @@ The unique name identifier of the app within the creator account #### Defined in -[src/types/app.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L163) +[src/types/app.ts:154](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L154) ___ @@ -143,7 +143,7 @@ Whether or not the app is updatable / immutable / unspecified #### Defined in -[src/types/app.ts:169](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L169) +[src/types/app.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L160) ___ @@ -155,7 +155,7 @@ The last round that the app was updated #### Defined in -[src/types/app.ts:177](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L177) +[src/types/app.ts:168](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L168) ___ @@ -171,4 +171,4 @@ The version of app that is / will be deployed #### Defined in -[src/types/app.ts:165](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L165) +[src/types/app.ts:156](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L156) diff --git a/docs/code/interfaces/types_app.AppReference.md b/docs/code/interfaces/types_app.AppReference.md index c7cab3162..7f0c04e49 100644 --- a/docs/code/interfaces/types_app.AppReference.md +++ b/docs/code/interfaces/types_app.AppReference.md @@ -29,7 +29,7 @@ The Algorand address of the account associated with the app #### Defined in -[src/types/app.ts:38](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L38) +[src/types/app.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L39) ___ @@ -41,4 +41,4 @@ The id of the app #### Defined in -[src/types/app.ts:36](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L36) +[src/types/app.ts:37](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L37) diff --git a/docs/code/interfaces/types_app.AppStorageSchema.md b/docs/code/interfaces/types_app.AppStorageSchema.md index ba1c0d62a..7991d8a27 100644 --- a/docs/code/interfaces/types_app.AppStorageSchema.md +++ b/docs/code/interfaces/types_app.AppStorageSchema.md @@ -26,7 +26,7 @@ Any extra pages that are needed for the smart contract; if left blank then the r #### Defined in -[src/types/app.ts:123](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L123) +[src/types/app.ts:124](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L124) ___ @@ -38,7 +38,7 @@ Restricts number of byte slices in global state #### Defined in -[src/types/app.ts:121](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L121) +[src/types/app.ts:122](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L122) ___ @@ -50,7 +50,7 @@ Restricts number of ints in global state #### Defined in -[src/types/app.ts:119](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L119) +[src/types/app.ts:120](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L120) ___ @@ -62,7 +62,7 @@ Restricts number of byte slices in per-user local state #### Defined in -[src/types/app.ts:117](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L117) +[src/types/app.ts:118](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L118) ___ @@ -74,4 +74,4 @@ Restricts number of ints in per-user local state #### Defined in -[src/types/app.ts:115](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L115) +[src/types/app.ts:116](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L116) diff --git a/docs/code/interfaces/types_app.BoxName.md b/docs/code/interfaces/types_app.BoxName.md index ae5903e16..2fa13c856 100644 --- a/docs/code/interfaces/types_app.BoxName.md +++ b/docs/code/interfaces/types_app.BoxName.md @@ -24,7 +24,7 @@ Name in UTF-8 #### Defined in -[src/types/app.ts:278](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L278) +[src/types/app.ts:269](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L269) ___ @@ -36,7 +36,7 @@ Name in Base64 #### Defined in -[src/types/app.ts:282](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L282) +[src/types/app.ts:273](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L273) ___ @@ -48,4 +48,4 @@ Name in binary bytes #### Defined in -[src/types/app.ts:280](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L280) +[src/types/app.ts:271](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L271) diff --git a/docs/code/interfaces/types_app.BoxValueRequestParams.md b/docs/code/interfaces/types_app.BoxValueRequestParams.md index 0a4cf9838..2bedcf331 100644 --- a/docs/code/interfaces/types_app.BoxValueRequestParams.md +++ b/docs/code/interfaces/types_app.BoxValueRequestParams.md @@ -27,7 +27,7 @@ The ID of the app return box names for #### Defined in -[src/types/app.ts:291](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L291) +[src/types/app.ts:282](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L282) ___ @@ -39,7 +39,7 @@ The name of the box to return either as a string, binary array or `BoxName` #### Defined in -[src/types/app.ts:293](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L293) +[src/types/app.ts:284](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L284) ___ @@ -51,4 +51,4 @@ The ABI type to decode the value using #### Defined in -[src/types/app.ts:295](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L295) +[src/types/app.ts:286](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L286) diff --git a/docs/code/interfaces/types_app.BoxValuesRequestParams.md b/docs/code/interfaces/types_app.BoxValuesRequestParams.md index a9435f5b9..1454ddebe 100644 --- a/docs/code/interfaces/types_app.BoxValuesRequestParams.md +++ b/docs/code/interfaces/types_app.BoxValuesRequestParams.md @@ -27,7 +27,7 @@ The ID of the app return box names for #### Defined in -[src/types/app.ts:304](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L304) +[src/types/app.ts:295](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L295) ___ @@ -39,7 +39,7 @@ The names of the boxes to return either as a string, binary array or BoxName` #### Defined in -[src/types/app.ts:306](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L306) +[src/types/app.ts:297](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L297) ___ @@ -51,4 +51,4 @@ The ABI type to decode the value using #### Defined in -[src/types/app.ts:308](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L308) +[src/types/app.ts:299](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L299) diff --git a/docs/code/interfaces/types_app.CompiledTeal.md b/docs/code/interfaces/types_app.CompiledTeal.md index 03c7186f3..7cafc2066 100644 --- a/docs/code/interfaces/types_app.CompiledTeal.md +++ b/docs/code/interfaces/types_app.CompiledTeal.md @@ -26,7 +26,7 @@ The compiled code #### Defined in -[src/types/app.ts:131](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L131) +[src/types/app.ts:132](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L132) ___ @@ -38,7 +38,7 @@ The base64 encoded code as a byte array #### Defined in -[src/types/app.ts:135](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L135) +[src/types/app.ts:136](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L136) ___ @@ -50,7 +50,7 @@ The hash returned by the compiler #### Defined in -[src/types/app.ts:133](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L133) +[src/types/app.ts:134](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L134) ___ @@ -62,7 +62,7 @@ Source map from the compilation #### Defined in -[src/types/app.ts:137](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L137) +[src/types/app.ts:138](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L138) ___ @@ -74,4 +74,4 @@ Original TEAL code #### Defined in -[src/types/app.ts:129](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L129) +[src/types/app.ts:130](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L130) diff --git a/docs/code/interfaces/types_app.CoreAppCallArgs.md b/docs/code/interfaces/types_app.CoreAppCallArgs.md index 8d849f9dd..5d099994e 100644 --- a/docs/code/interfaces/types_app.CoreAppCallArgs.md +++ b/docs/code/interfaces/types_app.CoreAppCallArgs.md @@ -33,7 +33,7 @@ The address of any accounts to load in #### Defined in -[src/types/app.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L48) +[src/types/app.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L49) ___ @@ -45,7 +45,7 @@ IDs of any apps to load into the foreignApps array #### Defined in -[src/types/app.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L50) +[src/types/app.ts:51](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L51) ___ @@ -57,7 +57,7 @@ IDs of any assets to load into the foreignAssets array #### Defined in -[src/types/app.ts:52](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L52) +[src/types/app.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L53) ___ @@ -69,7 +69,7 @@ Any box references to load #### Defined in -[src/types/app.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L46) +[src/types/app.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L47) ___ @@ -81,7 +81,7 @@ The optional lease for the transaction #### Defined in -[src/types/app.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L44) +[src/types/app.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L45) ___ @@ -95,4 +95,4 @@ Optional account / account address that should be authorised to transact on beha #### Defined in -[src/types/app.ts:57](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L57) +[src/types/app.ts:58](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L58) diff --git a/docs/code/interfaces/types_app.RawAppCallArgs.md b/docs/code/interfaces/types_app.RawAppCallArgs.md index 6be799dc9..4244c1fd8 100644 --- a/docs/code/interfaces/types_app.RawAppCallArgs.md +++ b/docs/code/interfaces/types_app.RawAppCallArgs.md @@ -39,7 +39,7 @@ The address of any accounts to load in #### Defined in -[src/types/app.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L48) +[src/types/app.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L49) ___ @@ -51,7 +51,7 @@ Any application arguments to pass through #### Defined in -[src/types/app.ts:65](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L65) +[src/types/app.ts:66](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L66) ___ @@ -67,7 +67,7 @@ IDs of any apps to load into the foreignApps array #### Defined in -[src/types/app.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L50) +[src/types/app.ts:51](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L51) ___ @@ -83,7 +83,7 @@ IDs of any assets to load into the foreignAssets array #### Defined in -[src/types/app.ts:52](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L52) +[src/types/app.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L53) ___ @@ -99,7 +99,7 @@ Any box references to load #### Defined in -[src/types/app.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L46) +[src/types/app.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L47) ___ @@ -115,7 +115,7 @@ The optional lease for the transaction #### Defined in -[src/types/app.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L44) +[src/types/app.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L45) ___ @@ -127,7 +127,7 @@ Property to aid intellisense #### Defined in -[src/types/app.ts:67](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L67) +[src/types/app.ts:68](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L68) ___ @@ -145,4 +145,4 @@ Optional account / account address that should be authorised to transact on beha #### Defined in -[src/types/app.ts:57](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L57) +[src/types/app.ts:58](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L58) diff --git a/docs/code/interfaces/types_app_arc56.Arc56Contract.md b/docs/code/interfaces/types_app_arc56.Arc56Contract.md deleted file mode 100644 index 030abedc9..000000000 --- a/docs/code/interfaces/types_app_arc56.Arc56Contract.md +++ /dev/null @@ -1,284 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / [types/app-arc56](../modules/types_app_arc56.md) / Arc56Contract - -# Interface: Arc56Contract - -[types/app-arc56](../modules/types_app_arc56.md).Arc56Contract - -Describes the entire contract. This interface is an extension of the interface described in ARC-4 - -## Table of contents - -### Properties - -- [arcs](types_app_arc56.Arc56Contract.md#arcs) -- [bareActions](types_app_arc56.Arc56Contract.md#bareactions) -- [byteCode](types_app_arc56.Arc56Contract.md#bytecode) -- [compilerInfo](types_app_arc56.Arc56Contract.md#compilerinfo) -- [desc](types_app_arc56.Arc56Contract.md#desc) -- [events](types_app_arc56.Arc56Contract.md#events) -- [methods](types_app_arc56.Arc56Contract.md#methods) -- [name](types_app_arc56.Arc56Contract.md#name) -- [networks](types_app_arc56.Arc56Contract.md#networks) -- [scratchVariables](types_app_arc56.Arc56Contract.md#scratchvariables) -- [source](types_app_arc56.Arc56Contract.md#source) -- [sourceInfo](types_app_arc56.Arc56Contract.md#sourceinfo) -- [state](types_app_arc56.Arc56Contract.md#state) -- [structs](types_app_arc56.Arc56Contract.md#structs) -- [templateVariables](types_app_arc56.Arc56Contract.md#templatevariables) - -## Properties - -### arcs - -• **arcs**: `number`[] - -The ARCs used and/or supported by this contract. All contracts implicitly support ARC4 and ARC56 - -#### Defined in - -[src/types/app-arc56.ts:250](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L250) - -___ - -### bareActions - -• **bareActions**: `Object` - -Supported bare actions for the contract. An action is a combination of call/create and an OnComplete - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `call` | (``"NoOp"`` \| ``"OptIn"`` \| ``"DeleteApplication"`` \| ``"CloseOut"`` \| ``"ClearState"`` \| ``"UpdateApplication"``)[] | OnCompletes this method allows when appID !== 0 | -| `create` | (``"NoOp"`` \| ``"OptIn"`` \| ``"DeleteApplication"``)[] | OnCompletes this method allows when appID === 0 | - -#### Defined in - -[src/types/app-arc56.ts:298](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L298) - -___ - -### byteCode - -• `Optional` **byteCode**: `Object` - -The compiled bytecode for the application. MUST be omitted if included as part of ARC23 - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `approval` | `string` | The approval program | -| `clear` | `string` | The clear program | - -#### Defined in - -[src/types/app-arc56.ts:319](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L319) - -___ - -### compilerInfo - -• `Optional` **compilerInfo**: `Object` - -Information used to get the given byteCode and/or PC values in sourceInfo. MUST be given if byteCode or PC values are present - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `compiler` | ``"algod"`` \| ``"puya"`` | The name of the compiler | -| `compilerVersion` | \{ `commitHash?`: `string` ; `major`: `number` ; `minor`: `number` ; `patch`: `number` } | Compiler version information | -| `compilerVersion.commitHash?` | `string` | - | -| `compilerVersion.major` | `number` | - | -| `compilerVersion.minor` | `number` | - | -| `compilerVersion.patch` | `number` | - | - -#### Defined in - -[src/types/app-arc56.ts:326](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L326) - -___ - -### desc - -• `Optional` **desc**: `string` - -Optional, user-friendly description for the interface - -#### Defined in - -[src/types/app-arc56.ts:254](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L254) - -___ - -### events - -• `Optional` **events**: [`Event`](types_app_arc56.Event.md)[] - -ARC-28 events that MAY be emitted by this contract - -#### Defined in - -[src/types/app-arc56.ts:338](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L338) - -___ - -### methods - -• **methods**: [`Method`](types_app_arc56.Method.md)[] - -All of the methods that the contract implements - -#### Defined in - -[src/types/app-arc56.ts:271](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L271) - -___ - -### name - -• **name**: `string` - -A user-friendly name for the contract - -#### Defined in - -[src/types/app-arc56.ts:252](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L252) - -___ - -### networks - -• `Optional` **networks**: `Object` - -Optional object listing the contract instances across different networks. -The key is the base64 genesis hash of the network, and the value contains -information about the deployed contract in the network indicated by the -key. A key containing the human-readable name of the network MAY be -included, but the corresponding genesis hash key MUST also be defined - -#### Index signature - -▪ [network: `string`]: \{ `appID`: `number` } - -#### Defined in - -[src/types/app-arc56.ts:262](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L262) - -___ - -### scratchVariables - -• `Optional` **scratchVariables**: `Object` - -The scratch variables used during runtime - -#### Index signature - -▪ [name: `string`]: \{ `slot`: `number` ; `type`: [`ABIType`](../modules/types_app_arc56.md#abitype) \| [`AVMType`](../modules/types_app_arc56.md#avmtype) \| [`StructName`](../modules/types_app_arc56.md#structname) } - -#### Defined in - -[src/types/app-arc56.ts:349](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L349) - -___ - -### source - -• `Optional` **source**: `Object` - -The pre-compiled TEAL that may contain template variables. MUST be omitted if included as part of ARC23 - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `approval` | `string` | The approval program | -| `clear` | `string` | The clear program | - -#### Defined in - -[src/types/app-arc56.ts:312](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L312) - -___ - -### sourceInfo - -• `Optional` **sourceInfo**: `Object` - -Information about the TEAL programs - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `approval` | [`ProgramSourceInfo`](types_app_arc56.ProgramSourceInfo.md) | Approval program information | -| `clear` | [`ProgramSourceInfo`](types_app_arc56.ProgramSourceInfo.md) | Clear program information | - -#### Defined in - -[src/types/app-arc56.ts:305](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L305) - -___ - -### state - -• **state**: `Object` - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `keys` | \{ `box`: \{ `[name: string]`: [`StorageKey`](types_app_arc56.StorageKey.md); } ; `global`: \{ `[name: string]`: [`StorageKey`](types_app_arc56.StorageKey.md); } ; `local`: \{ `[name: string]`: [`StorageKey`](types_app_arc56.StorageKey.md); } } | Mapping of human-readable names to StorageKey objects | -| `keys.box` | \{ `[name: string]`: [`StorageKey`](types_app_arc56.StorageKey.md); } | - | -| `keys.global` | \{ `[name: string]`: [`StorageKey`](types_app_arc56.StorageKey.md); } | - | -| `keys.local` | \{ `[name: string]`: [`StorageKey`](types_app_arc56.StorageKey.md); } | - | -| `maps` | \{ `box`: \{ `[name: string]`: [`StorageMap`](types_app_arc56.StorageMap.md); } ; `global`: \{ `[name: string]`: [`StorageMap`](types_app_arc56.StorageMap.md); } ; `local`: \{ `[name: string]`: [`StorageMap`](types_app_arc56.StorageMap.md); } } | Mapping of human-readable names to StorageMap objects | -| `maps.box` | \{ `[name: string]`: [`StorageMap`](types_app_arc56.StorageMap.md); } | - | -| `maps.global` | \{ `[name: string]`: [`StorageMap`](types_app_arc56.StorageMap.md); } | - | -| `maps.local` | \{ `[name: string]`: [`StorageMap`](types_app_arc56.StorageMap.md); } | - | -| `schema` | \{ `global`: \{ `bytes`: `number` ; `ints`: `number` } ; `local`: \{ `bytes`: `number` ; `ints`: `number` } } | Defines the values that should be used for GlobalNumUint, GlobalNumByteSlice, LocalNumUint, and LocalNumByteSlice when creating the application | -| `schema.global` | \{ `bytes`: `number` ; `ints`: `number` } | - | -| `schema.global.bytes` | `number` | - | -| `schema.global.ints` | `number` | - | -| `schema.local` | \{ `bytes`: `number` ; `ints`: `number` } | - | -| `schema.local.bytes` | `number` | - | -| `schema.local.ints` | `number` | - | - -#### Defined in - -[src/types/app-arc56.ts:272](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L272) - -___ - -### structs - -• **structs**: `Object` - -Named structs used by the application. Each struct field appears in the same order as ABI encoding. - -#### Index signature - -▪ [structName: [`StructName`](../modules/types_app_arc56.md#structname)]: [`StructField`](types_app_arc56.StructField.md)[] - -#### Defined in - -[src/types/app-arc56.ts:269](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L269) - -___ - -### templateVariables - -• `Optional` **templateVariables**: `Object` - -A mapping of template variable names as they appear in the TEAL (not including TMPL_ prefix) to their respective types and values (if applicable) - -#### Index signature - -▪ [name: `string`]: \{ `type`: [`ABIType`](../modules/types_app_arc56.md#abitype) \| [`AVMType`](../modules/types_app_arc56.md#avmtype) \| [`StructName`](../modules/types_app_arc56.md#structname) ; `value?`: `string` } - -#### Defined in - -[src/types/app-arc56.ts:340](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L340) diff --git a/docs/code/interfaces/types_app_arc56.Event.md b/docs/code/interfaces/types_app_arc56.Event.md deleted file mode 100644 index b8575f975..000000000 --- a/docs/code/interfaces/types_app_arc56.Event.md +++ /dev/null @@ -1,51 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / [types/app-arc56](../modules/types_app_arc56.md) / Event - -# Interface: Event - -[types/app-arc56](../modules/types_app_arc56.md).Event - -ARC-28 event - -## Table of contents - -### Properties - -- [args](types_app_arc56.Event.md#args) -- [desc](types_app_arc56.Event.md#desc) -- [name](types_app_arc56.Event.md#name) - -## Properties - -### args - -• **args**: \{ `desc?`: `string` ; `name?`: `string` ; `struct?`: `string` ; `type`: `string` }[] - -The arguments of the event, in order - -#### Defined in - -[src/types/app-arc56.ts:440](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L440) - -___ - -### desc - -• `Optional` **desc**: `string` - -Optional, user-friendly description for the event - -#### Defined in - -[src/types/app-arc56.ts:438](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L438) - -___ - -### name - -• **name**: `string` - -The name of the event - -#### Defined in - -[src/types/app-arc56.ts:436](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L436) diff --git a/docs/code/interfaces/types_app_arc56.Method.md b/docs/code/interfaces/types_app_arc56.Method.md deleted file mode 100644 index f9d33db18..000000000 --- a/docs/code/interfaces/types_app_arc56.Method.md +++ /dev/null @@ -1,145 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / [types/app-arc56](../modules/types_app_arc56.md) / Method - -# Interface: Method - -[types/app-arc56](../modules/types_app_arc56.md).Method - -Describes a method in the contract. This interface is an extension of the interface described in ARC-4 - -## Table of contents - -### Properties - -- [actions](types_app_arc56.Method.md#actions) -- [args](types_app_arc56.Method.md#args) -- [desc](types_app_arc56.Method.md#desc) -- [events](types_app_arc56.Method.md#events) -- [name](types_app_arc56.Method.md#name) -- [readonly](types_app_arc56.Method.md#readonly) -- [recommendations](types_app_arc56.Method.md#recommendations) -- [returns](types_app_arc56.Method.md#returns) - -## Properties - -### actions - -• **actions**: `Object` - -an action is a combination of call/create and an OnComplete - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `call` | (``"NoOp"`` \| ``"OptIn"`` \| ``"DeleteApplication"`` \| ``"CloseOut"`` \| ``"ClearState"`` \| ``"UpdateApplication"``)[] | OnCompletes this method allows when appID !== 0 | -| `create` | (``"NoOp"`` \| ``"OptIn"`` \| ``"DeleteApplication"``)[] | OnCompletes this method allows when appID === 0 | - -#### Defined in - -[src/types/app-arc56.ts:399](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L399) - -___ - -### args - -• **args**: \{ `defaultValue?`: \{ `data`: `string` ; `source`: ``"method"`` \| ``"box"`` \| ``"local"`` \| ``"global"`` \| ``"literal"`` ; `type?`: `string` } ; `desc?`: `string` ; `name?`: `string` ; `struct?`: `string` ; `type`: `string` }[] - -The arguments of the method, in order - -#### Defined in - -[src/types/app-arc56.ts:364](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L364) - -___ - -### desc - -• `Optional` **desc**: `string` - -Optional, user-friendly description for the method - -#### Defined in - -[src/types/app-arc56.ts:362](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L362) - -___ - -### events - -• `Optional` **events**: [`Event`](types_app_arc56.Event.md)[] - -ARC-28 events that MAY be emitted by this method - -#### Defined in - -[src/types/app-arc56.ts:408](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L408) - -___ - -### name - -• **name**: `string` - -The name of the method - -#### Defined in - -[src/types/app-arc56.ts:360](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L360) - -___ - -### readonly - -• `Optional` **readonly**: `boolean` - -If this method does not write anything to the ledger (ARC-22) - -#### Defined in - -[src/types/app-arc56.ts:406](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L406) - -___ - -### recommendations - -• `Optional` **recommendations**: `Object` - -Information that clients can use when calling the method - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `accounts?` | `string`[] | Recommended foreign accounts | -| `apps?` | `number`[] | Recommended foreign apps | -| `assets?` | `number`[] | Recommended foreign assets | -| `boxes?` | \{ `app?`: `number` ; `key`: `string` ; `readBytes`: `number` ; `writeBytes`: `number` } | Recommended box references to include | -| `boxes.app?` | `number` | The app ID for the box | -| `boxes.key` | `string` | The base64 encoded box key | -| `boxes.readBytes` | `number` | The number of bytes being read from the box | -| `boxes.writeBytes` | `number` | The number of bytes being written to the box | -| `innerTransactionCount?` | `number` | The number of inner transactions the caller should cover the fees for | - -#### Defined in - -[src/types/app-arc56.ts:410](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L410) - -___ - -### returns - -• **returns**: `Object` - -Information about the method's return value - -#### Type declaration - -| Name | Type | Description | -| :------ | :------ | :------ | -| `desc?` | `string` | Optional, user-friendly description for the return value | -| `struct?` | `string` | If the type is a struct, the name of the struct | -| `type` | `string` | The type of the return value, or "void" to indicate no return value. The `struct` field should also be checked to determine if this return value is a struct. | - -#### Defined in - -[src/types/app-arc56.ts:390](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L390) diff --git a/docs/code/interfaces/types_app_arc56.ProgramSourceInfo.md b/docs/code/interfaces/types_app_arc56.ProgramSourceInfo.md deleted file mode 100644 index 456d3183e..000000000 --- a/docs/code/interfaces/types_app_arc56.ProgramSourceInfo.md +++ /dev/null @@ -1,38 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / [types/app-arc56](../modules/types_app_arc56.md) / ProgramSourceInfo - -# Interface: ProgramSourceInfo - -[types/app-arc56](../modules/types_app_arc56.md).ProgramSourceInfo - -## Table of contents - -### Properties - -- [pcOffsetMethod](types_app_arc56.ProgramSourceInfo.md#pcoffsetmethod) -- [sourceInfo](types_app_arc56.ProgramSourceInfo.md#sourceinfo) - -## Properties - -### pcOffsetMethod - -• **pcOffsetMethod**: ``"none"`` \| ``"cblocks"`` - -How the program counter offset is calculated -- none: The pc values in sourceInfo are not offset -- cblocks: The pc values in sourceInfo are offset by the PC of the first op following the last cblock at the top of the program - -#### Defined in - -[src/types/app-arc56.ts:521](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L521) - -___ - -### sourceInfo - -• **sourceInfo**: `SourceInfo`[] - -The source information for the program - -#### Defined in - -[src/types/app-arc56.ts:516](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L516) diff --git a/docs/code/interfaces/types_app_arc56.StorageKey.md b/docs/code/interfaces/types_app_arc56.StorageKey.md deleted file mode 100644 index 6b86beb7d..000000000 --- a/docs/code/interfaces/types_app_arc56.StorageKey.md +++ /dev/null @@ -1,64 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / [types/app-arc56](../modules/types_app_arc56.md) / StorageKey - -# Interface: StorageKey - -[types/app-arc56](../modules/types_app_arc56.md).StorageKey - -Describes a single key in app storage - -## Table of contents - -### Properties - -- [desc](types_app_arc56.StorageKey.md#desc) -- [key](types_app_arc56.StorageKey.md#key) -- [keyType](types_app_arc56.StorageKey.md#keytype) -- [valueType](types_app_arc56.StorageKey.md#valuetype) - -## Properties - -### desc - -• `Optional` **desc**: `string` - -Description of what this storage key holds - -#### Defined in - -[src/types/app-arc56.ts:481](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L481) - -___ - -### key - -• **key**: `string` - -The bytes of the key encoded as base64 - -#### Defined in - -[src/types/app-arc56.ts:488](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L488) - -___ - -### keyType - -• **keyType**: `string` - -The type of the key - -#### Defined in - -[src/types/app-arc56.ts:483](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L483) - -___ - -### valueType - -• **valueType**: `string` - -The type of the value - -#### Defined in - -[src/types/app-arc56.ts:486](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L486) diff --git a/docs/code/interfaces/types_app_arc56.StorageMap.md b/docs/code/interfaces/types_app_arc56.StorageMap.md deleted file mode 100644 index e8a45f64d..000000000 --- a/docs/code/interfaces/types_app_arc56.StorageMap.md +++ /dev/null @@ -1,64 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / [types/app-arc56](../modules/types_app_arc56.md) / StorageMap - -# Interface: StorageMap - -[types/app-arc56](../modules/types_app_arc56.md).StorageMap - -Describes a mapping of key-value pairs in storage - -## Table of contents - -### Properties - -- [desc](types_app_arc56.StorageMap.md#desc) -- [keyType](types_app_arc56.StorageMap.md#keytype) -- [prefix](types_app_arc56.StorageMap.md#prefix) -- [valueType](types_app_arc56.StorageMap.md#valuetype) - -## Properties - -### desc - -• `Optional` **desc**: `string` - -Description of what the key-value pairs in this mapping hold - -#### Defined in - -[src/types/app-arc56.ts:494](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L494) - -___ - -### keyType - -• **keyType**: `string` - -The type of the keys in the map - -#### Defined in - -[src/types/app-arc56.ts:496](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L496) - -___ - -### prefix - -• `Optional` **prefix**: `string` - -The base64-encoded prefix of the map keys - -#### Defined in - -[src/types/app-arc56.ts:500](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L500) - -___ - -### valueType - -• **valueType**: `string` - -The type of the values in the map - -#### Defined in - -[src/types/app-arc56.ts:498](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L498) diff --git a/docs/code/interfaces/types_app_arc56.StructField.md b/docs/code/interfaces/types_app_arc56.StructField.md deleted file mode 100644 index f7e2dd730..000000000 --- a/docs/code/interfaces/types_app_arc56.StructField.md +++ /dev/null @@ -1,38 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / [types/app-arc56](../modules/types_app_arc56.md) / StructField - -# Interface: StructField - -[types/app-arc56](../modules/types_app_arc56.md).StructField - -Information about a single field in a struct - -## Table of contents - -### Properties - -- [name](types_app_arc56.StructField.md#name) -- [type](types_app_arc56.StructField.md#type) - -## Properties - -### name - -• **name**: `string` - -The name of the struct field - -#### Defined in - -[src/types/app-arc56.ts:473](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L473) - -___ - -### type - -• **type**: `string` \| [`StructField`](types_app_arc56.StructField.md)[] - -The type of the struct field's value - -#### Defined in - -[src/types/app-arc56.ts:475](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L475) diff --git a/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md b/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md index 1772b312a..12ca3cdfc 100644 --- a/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md +++ b/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md @@ -37,7 +37,7 @@ Omit.accounts #### Defined in -[src/types/app.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L48) +[src/types/app.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L49) ___ @@ -53,7 +53,7 @@ Omit.apps #### Defined in -[src/types/app.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L50) +[src/types/app.ts:51](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L51) ___ @@ -69,7 +69,7 @@ Omit.assets #### Defined in -[src/types/app.ts:52](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L52) +[src/types/app.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L53) ___ @@ -85,7 +85,7 @@ Omit.boxes #### Defined in -[src/types/app.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L46) +[src/types/app.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L47) ___ @@ -101,7 +101,7 @@ Omit.lease #### Defined in -[src/types/app.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L44) +[src/types/app.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L45) ___ @@ -113,7 +113,7 @@ If calling an ABI method then either the name of the method, or the ABI signatur #### Defined in -[src/types/app-client.ts:172](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L172) +[src/types/app-client.ts:179](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L179) ___ @@ -129,7 +129,7 @@ Omit.methodArgs #### Defined in -[src/types/app.ts:87](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L87) +[src/types/app.ts:88](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L88) ___ @@ -147,4 +147,4 @@ Omit.rekeyTo #### Defined in -[src/types/app.ts:57](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L57) +[src/types/app.ts:58](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L58) diff --git a/docs/code/interfaces/types_app_client.AppClientCallCoreParams.md b/docs/code/interfaces/types_app_client.AppClientCallCoreParams.md index 1e9b4832b..01dacd7a7 100644 --- a/docs/code/interfaces/types_app_client.AppClientCallCoreParams.md +++ b/docs/code/interfaces/types_app_client.AppClientCallCoreParams.md @@ -24,7 +24,7 @@ The transaction note for the smart contract call #### Defined in -[src/types/app-client.ts:183](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L183) +[src/types/app-client.ts:190](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L190) ___ @@ -36,7 +36,7 @@ Parameters to control transaction sending #### Defined in -[src/types/app-client.ts:185](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L185) +[src/types/app-client.ts:192](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L192) ___ @@ -48,4 +48,4 @@ The optional sender to send the transaction from, will use the application clien #### Defined in -[src/types/app-client.ts:181](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L181) +[src/types/app-client.ts:188](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L188) diff --git a/docs/code/interfaces/types_app_client.AppClientCompilationParams.md b/docs/code/interfaces/types_app_client.AppClientCompilationParams.md index e89bbffb0..318b8374c 100644 --- a/docs/code/interfaces/types_app_client.AppClientCompilationParams.md +++ b/docs/code/interfaces/types_app_client.AppClientCompilationParams.md @@ -22,7 +22,7 @@ Whether or not the contract should have deploy-time permanence control set, unde #### Defined in -[src/types/app-client.ts:200](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L200) +[src/types/app-client.ts:207](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L207) ___ @@ -34,7 +34,7 @@ Any deploy-time parameters to replace in the TEAL code #### Defined in -[src/types/app-client.ts:196](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L196) +[src/types/app-client.ts:203](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L203) ___ @@ -46,4 +46,4 @@ Whether or not the contract should have deploy-time immutability control set, un #### Defined in -[src/types/app-client.ts:198](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L198) +[src/types/app-client.ts:205](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L205) diff --git a/docs/code/interfaces/types_app_client.AppClientCompilationResult.md b/docs/code/interfaces/types_app_client.AppClientCompilationResult.md index 00fa8f1f3..ce719fe1f 100644 --- a/docs/code/interfaces/types_app_client.AppClientCompilationResult.md +++ b/docs/code/interfaces/types_app_client.AppClientCompilationResult.md @@ -33,7 +33,7 @@ The compiled bytecode of the approval program, ready to deploy to algod #### Defined in -[src/types/app-client.ts:253](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L253) +[src/types/app-client.ts:260](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L260) ___ @@ -45,7 +45,7 @@ The compiled bytecode of the clear state program, ready to deploy to algod #### Defined in -[src/types/app-client.ts:255](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L255) +[src/types/app-client.ts:262](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L262) ___ @@ -61,7 +61,7 @@ Partial.compiledApproval #### Defined in -[src/types/app.ts:226](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L226) +[src/types/app.ts:217](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L217) ___ @@ -77,4 +77,4 @@ Partial.compiledClear #### Defined in -[src/types/app.ts:228](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L228) +[src/types/app.ts:219](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L219) diff --git a/docs/code/interfaces/types_app_client.AppClientDeployCallInterfaceParams.md b/docs/code/interfaces/types_app_client.AppClientDeployCallInterfaceParams.md index 7b74c80aa..d0cb7d3f3 100644 --- a/docs/code/interfaces/types_app_client.AppClientDeployCallInterfaceParams.md +++ b/docs/code/interfaces/types_app_client.AppClientDeployCallInterfaceParams.md @@ -32,7 +32,7 @@ Any args to pass to any create transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:153](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L153) +[src/types/app-client.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L160) ___ @@ -44,7 +44,7 @@ Override the on-completion action for the create call; defaults to NoOp #### Defined in -[src/types/app-client.ts:155](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L155) +[src/types/app-client.ts:162](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L162) ___ @@ -56,7 +56,7 @@ Any args to pass to any delete transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L159) +[src/types/app-client.ts:166](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L166) ___ @@ -68,7 +68,7 @@ Any deploy-time parameters to replace in the TEAL code #### Defined in -[src/types/app-client.ts:151](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L151) +[src/types/app-client.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L158) ___ @@ -80,4 +80,4 @@ Any args to pass to any update transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L157) +[src/types/app-client.ts:164](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L164) diff --git a/docs/code/interfaces/types_app_client.AppClientDeployCoreParams.md b/docs/code/interfaces/types_app_client.AppClientDeployCoreParams.md index 5cb274e13..bc7a94b2b 100644 --- a/docs/code/interfaces/types_app_client.AppClientDeployCoreParams.md +++ b/docs/code/interfaces/types_app_client.AppClientDeployCoreParams.md @@ -35,7 +35,7 @@ If this is not specified then it will automatically be determined based on the A #### Defined in -[src/types/app-client.ts:141](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L141) +[src/types/app-client.ts:148](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L148) ___ @@ -48,7 +48,7 @@ If this is not specified then it will automatically be determined based on the A #### Defined in -[src/types/app-client.ts:137](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L137) +[src/types/app-client.ts:144](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L144) ___ @@ -60,7 +60,7 @@ What action to perform if a schema break is detected #### Defined in -[src/types/app-client.ts:143](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L143) +[src/types/app-client.ts:150](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L150) ___ @@ -72,7 +72,7 @@ What action to perform if a TEAL update is detected #### Defined in -[src/types/app-client.ts:145](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L145) +[src/types/app-client.ts:152](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L152) ___ @@ -84,7 +84,7 @@ Parameters to control transaction sending #### Defined in -[src/types/app-client.ts:133](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L133) +[src/types/app-client.ts:140](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L140) ___ @@ -96,7 +96,7 @@ The optional sender to send the transaction from, will use the application clien #### Defined in -[src/types/app-client.ts:131](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L131) +[src/types/app-client.ts:138](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L138) ___ @@ -108,4 +108,4 @@ The version of the contract, uses "1.0" by default #### Defined in -[src/types/app-client.ts:129](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L129) +[src/types/app-client.ts:136](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L136) diff --git a/docs/code/interfaces/types_app_client.AppClientDeployParams.md b/docs/code/interfaces/types_app_client.AppClientDeployParams.md index bc73fa8ee..550e0f8d7 100644 --- a/docs/code/interfaces/types_app_client.AppClientDeployParams.md +++ b/docs/code/interfaces/types_app_client.AppClientDeployParams.md @@ -47,7 +47,7 @@ If this is not specified then it will automatically be determined based on the A #### Defined in -[src/types/app-client.ts:141](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L141) +[src/types/app-client.ts:148](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L148) ___ @@ -64,7 +64,7 @@ If this is not specified then it will automatically be determined based on the A #### Defined in -[src/types/app-client.ts:137](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L137) +[src/types/app-client.ts:144](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L144) ___ @@ -80,7 +80,7 @@ Any args to pass to any create transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:153](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L153) +[src/types/app-client.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L160) ___ @@ -96,7 +96,7 @@ Override the on-completion action for the create call; defaults to NoOp #### Defined in -[src/types/app-client.ts:155](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L155) +[src/types/app-client.ts:162](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L162) ___ @@ -112,7 +112,7 @@ Any args to pass to any delete transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L159) +[src/types/app-client.ts:166](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L166) ___ @@ -128,7 +128,7 @@ Any deploy-time parameters to replace in the TEAL code #### Defined in -[src/types/app-client.ts:151](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L151) +[src/types/app-client.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L158) ___ @@ -144,7 +144,7 @@ What action to perform if a schema break is detected #### Defined in -[src/types/app-client.ts:143](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L143) +[src/types/app-client.ts:150](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L150) ___ @@ -160,7 +160,7 @@ What action to perform if a TEAL update is detected #### Defined in -[src/types/app-client.ts:145](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L145) +[src/types/app-client.ts:152](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L152) ___ @@ -172,7 +172,7 @@ Any overrides for the storage schema to request for the created app; by default #### Defined in -[src/types/app-client.ts:165](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L165) +[src/types/app-client.ts:172](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L172) ___ @@ -188,7 +188,7 @@ Parameters to control transaction sending #### Defined in -[src/types/app-client.ts:133](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L133) +[src/types/app-client.ts:140](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L140) ___ @@ -204,7 +204,7 @@ The optional sender to send the transaction from, will use the application clien #### Defined in -[src/types/app-client.ts:131](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L131) +[src/types/app-client.ts:138](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L138) ___ @@ -220,7 +220,7 @@ Any args to pass to any update transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L157) +[src/types/app-client.ts:164](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L164) ___ @@ -236,4 +236,4 @@ The version of the contract, uses "1.0" by default #### Defined in -[src/types/app-client.ts:129](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L129) +[src/types/app-client.ts:136](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L136) diff --git a/docs/code/interfaces/types_app_client.AppClientParams.md b/docs/code/interfaces/types_app_client.AppClientParams.md index b2383b2d1..422ee4dbd 100644 --- a/docs/code/interfaces/types_app_client.AppClientParams.md +++ b/docs/code/interfaces/types_app_client.AppClientParams.md @@ -29,7 +29,7 @@ An `AlgorandClient` instance #### Defined in -[src/types/app-client.ts:271](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L271) +[src/types/app-client.ts:278](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L278) ___ @@ -41,7 +41,7 @@ The ID of the app instance this client should make calls against. #### Defined in -[src/types/app-client.ts:261](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L261) +[src/types/app-client.ts:268](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L268) ___ @@ -54,13 +54,13 @@ Defaults to the ARC-32/ARC-56 app spec name #### Defined in -[src/types/app-client.ts:277](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L277) +[src/types/app-client.ts:284](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L284) ___ ### appSpec -• **appSpec**: `string` \| [`Arc56Contract`](types_app_arc56.Arc56Contract.md) \| [`AppSpec`](types_app_spec.AppSpec.md) +• **appSpec**: `string` \| `Arc56Contract` \| [`AppSpec`](types_app_spec.AppSpec.md) The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` @@ -69,7 +69,7 @@ The ARC-56 or ARC-32 application spec as either: #### Defined in -[src/types/app-client.ts:268](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L268) +[src/types/app-client.ts:275](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L275) ___ @@ -81,7 +81,7 @@ Optional source map for the approval program #### Defined in -[src/types/app-client.ts:283](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L283) +[src/types/app-client.ts:290](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L290) ___ @@ -93,7 +93,7 @@ Optional source map for the clear state program #### Defined in -[src/types/app-client.ts:285](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L285) +[src/types/app-client.ts:292](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L292) ___ @@ -105,7 +105,7 @@ Optional address to use for the account to use as the default sender for calls. #### Defined in -[src/types/app-client.ts:279](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L279) +[src/types/app-client.ts:286](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L286) ___ @@ -117,4 +117,4 @@ Optional signer to use as the default signer for default sender calls (if not sp #### Defined in -[src/types/app-client.ts:281](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L281) +[src/types/app-client.ts:288](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L288) diff --git a/docs/code/interfaces/types_app_client.AppSourceMaps.md b/docs/code/interfaces/types_app_client.AppSourceMaps.md index fb488cfeb..19ca32b0e 100644 --- a/docs/code/interfaces/types_app_client.AppSourceMaps.md +++ b/docs/code/interfaces/types_app_client.AppSourceMaps.md @@ -23,7 +23,7 @@ The source map of the approval program #### Defined in -[src/types/app-client.ts:234](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L234) +[src/types/app-client.ts:241](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L241) ___ @@ -35,4 +35,4 @@ The source map of the clear program #### Defined in -[src/types/app-client.ts:236](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L236) +[src/types/app-client.ts:243](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L243) diff --git a/docs/code/interfaces/types_app_client.FundAppAccountParams.md b/docs/code/interfaces/types_app_client.FundAppAccountParams.md index 388b435c3..c7cc2c7a6 100644 --- a/docs/code/interfaces/types_app_client.FundAppAccountParams.md +++ b/docs/code/interfaces/types_app_client.FundAppAccountParams.md @@ -23,7 +23,7 @@ Parameters for funding an app account #### Defined in -[src/types/app-client.ts:222](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L222) +[src/types/app-client.ts:229](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L229) ___ @@ -35,7 +35,7 @@ The transaction note for the smart contract call #### Defined in -[src/types/app-client.ts:226](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L226) +[src/types/app-client.ts:233](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L233) ___ @@ -47,7 +47,7 @@ Parameters to control transaction sending #### Defined in -[src/types/app-client.ts:228](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L228) +[src/types/app-client.ts:235](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L235) ___ @@ -59,4 +59,4 @@ The optional sender to send the transaction from, will use the application clien #### Defined in -[src/types/app-client.ts:224](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L224) +[src/types/app-client.ts:231](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L231) diff --git a/docs/code/interfaces/types_app_client.ResolveAppById.md b/docs/code/interfaces/types_app_client.ResolveAppById.md index 83bc4be77..c2aef8ae9 100644 --- a/docs/code/interfaces/types_app_client.ResolveAppById.md +++ b/docs/code/interfaces/types_app_client.ResolveAppById.md @@ -34,7 +34,7 @@ The id of an existing app to call using this client, or 0 if the app hasn't been #### Defined in -[src/types/app-client.ts:83](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L83) +[src/types/app-client.ts:90](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L90) ___ @@ -50,7 +50,7 @@ The optional name to use to mark the app when deploying `ApplicationClient.deplo #### Defined in -[src/types/app-client.ts:85](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L85) +[src/types/app-client.ts:92](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L92) ___ @@ -62,4 +62,4 @@ How the app ID is resolved, either by `'id'` or `'creatorAndName'`; must be `'cr #### Defined in -[src/types/app-client.ts:90](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L90) +[src/types/app-client.ts:97](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L97) diff --git a/docs/code/interfaces/types_app_client.ResolveAppByIdBase.md b/docs/code/interfaces/types_app_client.ResolveAppByIdBase.md index 0c8d6d7e5..3842ce940 100644 --- a/docs/code/interfaces/types_app_client.ResolveAppByIdBase.md +++ b/docs/code/interfaces/types_app_client.ResolveAppByIdBase.md @@ -29,7 +29,7 @@ The id of an existing app to call using this client, or 0 if the app hasn't been #### Defined in -[src/types/app-client.ts:83](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L83) +[src/types/app-client.ts:90](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L90) ___ @@ -41,4 +41,4 @@ The optional name to use to mark the app when deploying `ApplicationClient.deplo #### Defined in -[src/types/app-client.ts:85](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L85) +[src/types/app-client.ts:92](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L92) diff --git a/docs/code/interfaces/types_app_client.SourceMapExport.md b/docs/code/interfaces/types_app_client.SourceMapExport.md index c90805a88..2cd1e4e1b 100644 --- a/docs/code/interfaces/types_app_client.SourceMapExport.md +++ b/docs/code/interfaces/types_app_client.SourceMapExport.md @@ -21,7 +21,7 @@ #### Defined in -[src/types/app-client.ts:243](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L243) +[src/types/app-client.ts:250](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L250) ___ @@ -31,7 +31,7 @@ ___ #### Defined in -[src/types/app-client.ts:242](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L242) +[src/types/app-client.ts:249](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L249) ___ @@ -41,7 +41,7 @@ ___ #### Defined in -[src/types/app-client.ts:241](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L241) +[src/types/app-client.ts:248](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L248) ___ @@ -51,4 +51,4 @@ ___ #### Defined in -[src/types/app-client.ts:240](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L240) +[src/types/app-client.ts:247](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L247) diff --git a/docs/code/interfaces/types_app_deployer.AppMetadata.md b/docs/code/interfaces/types_app_deployer.AppMetadata.md index f4b615ed3..e8514f991 100644 --- a/docs/code/interfaces/types_app_deployer.AppMetadata.md +++ b/docs/code/interfaces/types_app_deployer.AppMetadata.md @@ -89,7 +89,7 @@ Whether or not the app is deletable / permanent / unspecified #### Defined in -[src/types/app.ts:167](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L167) +[src/types/app.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L158) ___ @@ -117,7 +117,7 @@ The unique name identifier of the app within the creator account #### Defined in -[src/types/app.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L163) +[src/types/app.ts:154](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L154) ___ @@ -133,7 +133,7 @@ Whether or not the app is updatable / immutable / unspecified #### Defined in -[src/types/app.ts:169](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L169) +[src/types/app.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L160) ___ @@ -161,4 +161,4 @@ The version of app that is / will be deployed #### Defined in -[src/types/app.ts:165](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L165) +[src/types/app.ts:156](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L156) diff --git a/docs/code/interfaces/types_app_factory.AppFactoryParams.md b/docs/code/interfaces/types_app_factory.AppFactoryParams.md index 67d1f2876..dd84dc950 100644 --- a/docs/code/interfaces/types_app_factory.AppFactoryParams.md +++ b/docs/code/interfaces/types_app_factory.AppFactoryParams.md @@ -30,7 +30,7 @@ Parameters to create an app client #### Defined in -[src/types/app-factory.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L53) +[src/types/app-factory.ts:38](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L38) ___ @@ -43,13 +43,13 @@ Defaults to the ARC-32/ARC-56 app spec name. #### Defined in -[src/types/app-factory.ts:59](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L59) +[src/types/app-factory.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L44) ___ ### appSpec -• **appSpec**: `string` \| [`Arc56Contract`](types_app_arc56.Arc56Contract.md) \| [`AppSpec`](types_app_spec.AppSpec.md) +• **appSpec**: `string` \| `Arc56Contract` \| [`AppSpec`](types_app_spec.AppSpec.md) The ARC-56 or ARC-32 application spec as either: * Parsed JSON ARC-56 `Contract` @@ -58,7 +58,7 @@ The ARC-56 or ARC-32 application spec as either: #### Defined in -[src/types/app-factory.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L50) +[src/types/app-factory.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L35) ___ @@ -70,7 +70,7 @@ Optional address to use for the account to use as the default sender for calls. #### Defined in -[src/types/app-factory.ts:62](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L62) +[src/types/app-factory.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L47) ___ @@ -82,7 +82,7 @@ Optional signer to use as the default signer for default sender calls (if not sp #### Defined in -[src/types/app-factory.ts:65](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L65) +[src/types/app-factory.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L50) ___ @@ -98,7 +98,7 @@ for each call. #### Defined in -[src/types/app-factory.ts:86](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L86) +[src/types/app-factory.ts:71](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L71) ___ @@ -114,7 +114,7 @@ for each call. #### Defined in -[src/types/app-factory.ts:95](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L95) +[src/types/app-factory.ts:80](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L80) ___ @@ -130,7 +130,7 @@ for each call. #### Defined in -[src/types/app-factory.ts:77](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L77) +[src/types/app-factory.ts:62](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L62) ___ @@ -142,4 +142,4 @@ The version of app that is / will be deployed; defaults to 1.0 #### Defined in -[src/types/app-factory.ts:68](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L68) +[src/types/app-factory.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L53) diff --git a/docs/code/interfaces/types_app_manager.AppInformation.md b/docs/code/interfaces/types_app_manager.AppInformation.md index 34c9bdb8b..764f9d2af 100644 --- a/docs/code/interfaces/types_app_manager.AppInformation.md +++ b/docs/code/interfaces/types_app_manager.AppInformation.md @@ -32,7 +32,7 @@ The escrow address that the app operates with. #### Defined in -[src/types/app-manager.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L23) +[src/types/app-manager.ts:22](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L22) ___ @@ -44,7 +44,7 @@ The ID of the app. #### Defined in -[src/types/app-manager.ts:21](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L21) +[src/types/app-manager.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L20) ___ @@ -56,7 +56,7 @@ Approval program. #### Defined in -[src/types/app-manager.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L27) +[src/types/app-manager.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L26) ___ @@ -68,7 +68,7 @@ Clear state program. #### Defined in -[src/types/app-manager.ts:31](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L31) +[src/types/app-manager.ts:30](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L30) ___ @@ -81,7 +81,7 @@ parameters and global state for this application can be found. #### Defined in -[src/types/app-manager.ts:36](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L36) +[src/types/app-manager.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L35) ___ @@ -93,7 +93,7 @@ Any extra pages that are needed for the smart contract. #### Defined in -[src/types/app-manager.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L50) +[src/types/app-manager.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L49) ___ @@ -105,7 +105,7 @@ The number of allocated byte slices in global state. #### Defined in -[src/types/app-manager.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L48) +[src/types/app-manager.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L47) ___ @@ -117,7 +117,7 @@ The number of allocated ints in global state. #### Defined in -[src/types/app-manager.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L46) +[src/types/app-manager.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L45) ___ @@ -129,7 +129,7 @@ Current global state values. #### Defined in -[src/types/app-manager.ts:40](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L40) +[src/types/app-manager.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L39) ___ @@ -141,7 +141,7 @@ The number of allocated byte slices in per-user local state. #### Defined in -[src/types/app-manager.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L44) +[src/types/app-manager.ts:43](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L43) ___ @@ -153,4 +153,4 @@ The number of allocated ints in per-user local state. #### Defined in -[src/types/app-manager.ts:42](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L42) +[src/types/app-manager.ts:41](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L41) diff --git a/docs/code/interfaces/types_app_manager.BoxReference.md b/docs/code/interfaces/types_app_manager.BoxReference.md index 612338275..38307555f 100644 --- a/docs/code/interfaces/types_app_manager.BoxReference.md +++ b/docs/code/interfaces/types_app_manager.BoxReference.md @@ -23,7 +23,7 @@ A unique application id #### Defined in -[src/types/app-manager.ts:69](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L69) +[src/types/app-manager.ts:68](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L68) ___ @@ -35,4 +35,4 @@ Identifier for a box name #### Defined in -[src/types/app-manager.ts:73](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L73) +[src/types/app-manager.ts:72](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L72) diff --git a/docs/code/interfaces/types_app_manager.BoxValueRequestParams.md b/docs/code/interfaces/types_app_manager.BoxValueRequestParams.md index 99139718a..d0bf301ce 100644 --- a/docs/code/interfaces/types_app_manager.BoxValueRequestParams.md +++ b/docs/code/interfaces/types_app_manager.BoxValueRequestParams.md @@ -24,7 +24,7 @@ The ID of the app return box names for #### Defined in -[src/types/app-manager.ts:81](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L81) +[src/types/app-manager.ts:80](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L80) ___ @@ -36,7 +36,7 @@ The name of the box to return either as a string, binary array or `BoxName` #### Defined in -[src/types/app-manager.ts:83](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L83) +[src/types/app-manager.ts:82](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L82) ___ @@ -48,4 +48,4 @@ The ABI type to decode the value using #### Defined in -[src/types/app-manager.ts:85](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L85) +[src/types/app-manager.ts:84](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L84) diff --git a/docs/code/interfaces/types_app_manager.BoxValuesRequestParams.md b/docs/code/interfaces/types_app_manager.BoxValuesRequestParams.md index a19665ecb..6d5acc4e4 100644 --- a/docs/code/interfaces/types_app_manager.BoxValuesRequestParams.md +++ b/docs/code/interfaces/types_app_manager.BoxValuesRequestParams.md @@ -24,7 +24,7 @@ The ID of the app return box names for #### Defined in -[src/types/app-manager.ts:93](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L93) +[src/types/app-manager.ts:92](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L92) ___ @@ -36,7 +36,7 @@ The names of the boxes to return either as a string, binary array or BoxName` #### Defined in -[src/types/app-manager.ts:95](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L95) +[src/types/app-manager.ts:94](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L94) ___ @@ -48,4 +48,4 @@ The ABI type to decode the value using #### Defined in -[src/types/app-manager.ts:97](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L97) +[src/types/app-manager.ts:96](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L96) diff --git a/docs/code/interfaces/types_app_spec.AppSources.md b/docs/code/interfaces/types_app_spec.AppSources.md index aafe7af8f..37d56414c 100644 --- a/docs/code/interfaces/types_app_spec.AppSources.md +++ b/docs/code/interfaces/types_app_spec.AppSources.md @@ -23,7 +23,7 @@ The TEAL source of the approval program #### Defined in -[src/types/app-spec.ts:170](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L170) +[src/types/app-spec.ts:219](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L219) ___ @@ -35,4 +35,4 @@ The TEAL source of the clear program #### Defined in -[src/types/app-spec.ts:172](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L172) +[src/types/app-spec.ts:221](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L221) diff --git a/docs/code/interfaces/types_app_spec.AppSpec.md b/docs/code/interfaces/types_app_spec.AppSpec.md index 867014fab..a589cbaf8 100644 --- a/docs/code/interfaces/types_app_spec.AppSpec.md +++ b/docs/code/interfaces/types_app_spec.AppSpec.md @@ -27,7 +27,7 @@ The config of all BARE calls (i.e. non ABI calls with no args) #### Defined in -[src/types/app-spec.ts:161](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L161) +[src/types/app-spec.ts:173](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L173) ___ @@ -39,7 +39,7 @@ The ABI-0004 contract definition see https://github.com/algorandfoundation/ARCs/ #### Defined in -[src/types/app-spec.ts:155](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L155) +[src/types/app-spec.ts:167](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L167) ___ @@ -51,7 +51,7 @@ Method call hints #### Defined in -[src/types/app-spec.ts:151](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L151) +[src/types/app-spec.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L163) ___ @@ -63,7 +63,7 @@ The values that make up the local and global state #### Defined in -[src/types/app-spec.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L157) +[src/types/app-spec.ts:169](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L169) ___ @@ -75,7 +75,7 @@ The TEAL source #### Defined in -[src/types/app-spec.ts:153](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L153) +[src/types/app-spec.ts:165](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L165) ___ @@ -87,4 +87,4 @@ The rolled-up schema allocation values for local and global state #### Defined in -[src/types/app-spec.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L159) +[src/types/app-spec.ts:171](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L171) diff --git a/docs/code/interfaces/types_app_spec.CallConfig.md b/docs/code/interfaces/types_app_spec.CallConfig.md index 3a2cda612..2c8e00a89 100644 --- a/docs/code/interfaces/types_app_spec.CallConfig.md +++ b/docs/code/interfaces/types_app_spec.CallConfig.md @@ -26,7 +26,7 @@ Close out call config #### Defined in -[src/types/app-spec.ts:190](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L190) +[src/types/app-spec.ts:239](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L239) ___ @@ -38,7 +38,7 @@ Delete call config #### Defined in -[src/types/app-spec.ts:194](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L194) +[src/types/app-spec.ts:243](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L243) ___ @@ -50,7 +50,7 @@ NoOp call config #### Defined in -[src/types/app-spec.ts:186](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L186) +[src/types/app-spec.ts:235](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L235) ___ @@ -62,7 +62,7 @@ Opt-in call config #### Defined in -[src/types/app-spec.ts:188](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L188) +[src/types/app-spec.ts:237](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L237) ___ @@ -74,4 +74,4 @@ Update call config #### Defined in -[src/types/app-spec.ts:192](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L192) +[src/types/app-spec.ts:241](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L241) diff --git a/docs/code/interfaces/types_app_spec.DeclaredSchemaValueSpec.md b/docs/code/interfaces/types_app_spec.DeclaredSchemaValueSpec.md index f94456d5a..be10d25a1 100644 --- a/docs/code/interfaces/types_app_spec.DeclaredSchemaValueSpec.md +++ b/docs/code/interfaces/types_app_spec.DeclaredSchemaValueSpec.md @@ -25,7 +25,7 @@ A description of the variable #### Defined in -[src/types/app-spec.ts:275](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L275) +[src/types/app-spec.ts:324](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L324) ___ @@ -37,7 +37,7 @@ The name of the key #### Defined in -[src/types/app-spec.ts:273](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L273) +[src/types/app-spec.ts:322](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L322) ___ @@ -49,7 +49,7 @@ Whether or not the value is set statically (at create time only) or dynamically #### Defined in -[src/types/app-spec.ts:277](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L277) +[src/types/app-spec.ts:326](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L326) ___ @@ -61,4 +61,4 @@ The type of value #### Defined in -[src/types/app-spec.ts:271](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L271) +[src/types/app-spec.ts:320](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L320) diff --git a/docs/code/interfaces/types_app_spec.Hint.md b/docs/code/interfaces/types_app_spec.Hint.md index 04e1aaaaf..d01cd38e9 100644 --- a/docs/code/interfaces/types_app_spec.Hint.md +++ b/docs/code/interfaces/types_app_spec.Hint.md @@ -23,7 +23,7 @@ Hint information for a given method call to allow client generation #### Defined in -[src/types/app-spec.ts:203](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L203) +[src/types/app-spec.ts:252](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L252) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/types/app-spec.ts:202](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L202) +[src/types/app-spec.ts:251](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L251) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/types/app-spec.ts:201](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L201) +[src/types/app-spec.ts:250](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L250) ___ @@ -55,4 +55,4 @@ Any user-defined struct/tuple types used in the method call, keyed by parameter #### Defined in -[src/types/app-spec.ts:200](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L200) +[src/types/app-spec.ts:249](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L249) diff --git a/docs/code/interfaces/types_app_spec.ReservedSchemaValueSpec.md b/docs/code/interfaces/types_app_spec.ReservedSchemaValueSpec.md index 8614a305f..9f58d3838 100644 --- a/docs/code/interfaces/types_app_spec.ReservedSchemaValueSpec.md +++ b/docs/code/interfaces/types_app_spec.ReservedSchemaValueSpec.md @@ -24,7 +24,7 @@ The description of the reserved storage space #### Defined in -[src/types/app-spec.ts:285](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L285) +[src/types/app-spec.ts:334](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L334) ___ @@ -36,7 +36,7 @@ The maximum number of slots to reserve #### Defined in -[src/types/app-spec.ts:287](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L287) +[src/types/app-spec.ts:336](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L336) ___ @@ -48,4 +48,4 @@ The type of value #### Defined in -[src/types/app-spec.ts:283](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L283) +[src/types/app-spec.ts:332](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L332) diff --git a/docs/code/interfaces/types_app_spec.Schema.md b/docs/code/interfaces/types_app_spec.Schema.md index 3576da50e..35a5134a8 100644 --- a/docs/code/interfaces/types_app_spec.Schema.md +++ b/docs/code/interfaces/types_app_spec.Schema.md @@ -23,7 +23,7 @@ Declared storage schema #### Defined in -[src/types/app-spec.ts:301](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L301) +[src/types/app-spec.ts:350](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L350) ___ @@ -35,4 +35,4 @@ Reserved storage schema #### Defined in -[src/types/app-spec.ts:303](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L303) +[src/types/app-spec.ts:352](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L352) diff --git a/docs/code/interfaces/types_app_spec.SchemaSpec.md b/docs/code/interfaces/types_app_spec.SchemaSpec.md index 7da1a74eb..a42081f54 100644 --- a/docs/code/interfaces/types_app_spec.SchemaSpec.md +++ b/docs/code/interfaces/types_app_spec.SchemaSpec.md @@ -23,7 +23,7 @@ The global storage schema #### Defined in -[src/types/app-spec.ts:295](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L295) +[src/types/app-spec.ts:344](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L344) ___ @@ -35,4 +35,4 @@ The local storage schema #### Defined in -[src/types/app-spec.ts:293](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L293) +[src/types/app-spec.ts:342](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L342) diff --git a/docs/code/interfaces/types_app_spec.StateSchemaSpec.md b/docs/code/interfaces/types_app_spec.StateSchemaSpec.md index 110b7710b..becbc684a 100644 --- a/docs/code/interfaces/types_app_spec.StateSchemaSpec.md +++ b/docs/code/interfaces/types_app_spec.StateSchemaSpec.md @@ -23,7 +23,7 @@ Global storage spec #### Defined in -[src/types/app-spec.ts:309](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L309) +[src/types/app-spec.ts:358](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L358) ___ @@ -35,4 +35,4 @@ Local storage spec #### Defined in -[src/types/app-spec.ts:311](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L311) +[src/types/app-spec.ts:360](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L360) diff --git a/docs/code/interfaces/types_app_spec.Struct.md b/docs/code/interfaces/types_app_spec.Struct.md index 0be4dc7b8..0d5a973cb 100644 --- a/docs/code/interfaces/types_app_spec.Struct.md +++ b/docs/code/interfaces/types_app_spec.Struct.md @@ -23,7 +23,7 @@ The elements (in order) that make up the struct/tuple #### Defined in -[src/types/app-spec.ts:220](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L220) +[src/types/app-spec.ts:269](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L269) ___ @@ -35,4 +35,4 @@ The name of the type #### Defined in -[src/types/app-spec.ts:218](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L218) +[src/types/app-spec.ts:267](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L267) diff --git a/docs/code/interfaces/types_client_manager.TypedAppClient.md b/docs/code/interfaces/types_client_manager.TypedAppClient.md index 82b32d404..facad0df8 100644 --- a/docs/code/interfaces/types_client_manager.TypedAppClient.md +++ b/docs/code/interfaces/types_client_manager.TypedAppClient.md @@ -53,7 +53,7 @@ Interface to identify a typed client that can be used to interact with an applic | Name | Type | | :------ | :------ | -| `params` | `Omit`\<\{ `algorand`: [`AlgorandClient`](../classes/types_algorand_client.AlgorandClient.md) ; `appLookupCache?`: [`AppLookup`](types_app_deployer.AppLookup.md) ; `appName?`: `string` ; `appSpec`: `string` \| [`Arc56Contract`](types_app_arc56.Arc56Contract.md) \| [`AppSpec`](types_app_spec.AppSpec.md) ; `approvalSourceMap?`: `ProgramSourceMap` ; `clearSourceMap?`: `ProgramSourceMap` ; `creatorAddress`: `ReadableAddress` ; `defaultSender?`: `ReadableAddress` ; `defaultSigner?`: `TransactionSigner` ; `ignoreCache?`: `boolean` }, ``"appSpec"``\> | +| `params` | `Omit`\<\{ `algorand`: [`AlgorandClient`](../classes/types_algorand_client.AlgorandClient.md) ; `appLookupCache?`: [`AppLookup`](types_app_deployer.AppLookup.md) ; `appName?`: `string` ; `appSpec`: `string` \| `Arc56Contract` \| [`AppSpec`](types_app_spec.AppSpec.md) ; `approvalSourceMap?`: `ProgramSourceMap` ; `clearSourceMap?`: `ProgramSourceMap` ; `creatorAddress`: `ReadableAddress` ; `defaultSender?`: `ReadableAddress` ; `defaultSigner?`: `TransactionSigner` ; `ignoreCache?`: `boolean` }, ``"appSpec"``\> | #### Returns diff --git a/docs/code/interfaces/types_transaction.SendTransactionComposerResults.md b/docs/code/interfaces/types_transaction.SendTransactionComposerResults.md index 2501bf2af..48e87eac4 100644 --- a/docs/code/interfaces/types_transaction.SendTransactionComposerResults.md +++ b/docs/code/interfaces/types_transaction.SendTransactionComposerResults.md @@ -51,7 +51,7 @@ ___ ### returns -• `Optional` **returns**: [`ABIReturn`](../modules/types_app.md#abireturn)[] +• `Optional` **returns**: `ABIReturn`[] If ABI method(s) were called the processed return values diff --git a/docs/code/modules/index.md b/docs/code/modules/index.md index 47f90daef..99363155b 100644 --- a/docs/code/modules/index.md +++ b/docs/code/modules/index.md @@ -39,7 +39,6 @@ - [algo](index.md#algo) - [algos](index.md#algos) - [encodeLease](index.md#encodelease) -- [getABIReturnValue](index.md#getabireturnvalue) - [microAlgo](index.md#microalgo) - [microAlgos](index.md#microalgos) - [performTransactionComposerSimulate](index.md#performtransactioncomposersimulate) @@ -145,7 +144,7 @@ ___ #### Defined in -[src/transaction/transaction.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L25) +[src/transaction/transaction.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L23) ___ @@ -155,7 +154,7 @@ ___ #### Defined in -[src/transaction/transaction.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L24) +[src/transaction/transaction.ts:22](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L22) ___ @@ -165,7 +164,7 @@ ___ #### Defined in -[src/transaction/transaction.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L23) +[src/transaction/transaction.ts:21](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L21) ## Functions @@ -249,31 +248,7 @@ algokit.encodeLease(new Uint8Array([1, 2, 3])) #### Defined in -[src/transaction/transaction.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L35) - -___ - -### getABIReturnValue - -▸ **getABIReturnValue**(`result`, `type`): [`ABIReturn`](types_app.md#abireturn) - -Takes an algosdk `ABIResult` and converts it to an `ABIReturn`. -Converts `bigint`'s for Uint's < 64 to `number` for easier use. - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `result` | `ABIResult` | The `ABIReturn` | -| `type` | `ABIReturnType` | - | - -#### Returns - -[`ABIReturn`](types_app.md#abireturn) - -#### Defined in - -[src/transaction/transaction.ts:141](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L141) +[src/transaction/transaction.ts:33](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L33) ___ @@ -377,7 +352,7 @@ app call resources populated into it #### Defined in -[src/transaction/transaction.ts:81](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L81) +[src/transaction/transaction.ts:79](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L79) ___ @@ -409,7 +384,7 @@ based on the supplied sendParams to prepare it for sending. #### Defined in -[src/transaction/transaction.ts:102](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L102) +[src/transaction/transaction.ts:100](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L100) ___ @@ -436,7 +411,7 @@ Signs and sends transactions that have been collected by an `TransactionComposer #### Defined in -[src/transaction/transaction.ts:128](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L128) +[src/transaction/transaction.ts:126](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L126) ___ @@ -489,4 +464,4 @@ Throws an error if the transaction is not confirmed or rejected in the next `tim #### Defined in -[src/transaction/transaction.ts:174](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L174) +[src/transaction/transaction.ts:145](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transaction/transaction.ts#L145) diff --git a/docs/code/modules/types_app.md b/docs/code/modules/types_app.md index 3a28839d1..9d429cf3d 100644 --- a/docs/code/modules/types_app.md +++ b/docs/code/modules/types_app.md @@ -32,7 +32,6 @@ - [ABIAppCallArg](types_app.md#abiappcallarg) - [ABIAppCallArgs](types_app.md#abiappcallargs) -- [ABIReturn](types_app.md#abireturn) - [AppCallArgs](types_app.md#appcallargs) - [AppCallTransactionResult](types_app.md#appcalltransactionresult) - [AppReturn](types_app.md#appreturn) @@ -58,31 +57,19 @@ An argument for an ABI method, either a primitive value, or a transaction with o #### Defined in -[src/types/app.ts:71](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L71) +[src/types/app.ts:72](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L72) ___ ### ABIAppCallArgs -Ƭ **ABIAppCallArgs**: [`CoreAppCallArgs`](../interfaces/types_app.CoreAppCallArgs.md) & \{ `method`: `ABIMethodParams` \| `ABIMethod` ; `methodArgs`: [`ABIAppCallArg`](types_app.md#abiappcallarg)[] } +Ƭ **ABIAppCallArgs**: [`CoreAppCallArgs`](../interfaces/types_app.CoreAppCallArgs.md) & \{ `method`: `ABIMethod` ; `methodArgs`: [`ABIAppCallArg`](types_app.md#abiappcallarg)[] } App call args for an ABI call #### Defined in -[src/types/app.ts:83](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L83) - -___ - -### ABIReturn - -Ƭ **ABIReturn**: \{ `decodeError`: `undefined` ; `method`: `ABIMethod` ; `rawReturnValue`: `Uint8Array` ; `returnValue`: `ABIValue` } \| \{ `decodeError`: `Error` ; `method?`: `undefined` ; `rawReturnValue?`: `undefined` ; `returnValue?`: `undefined` } - -The return value of an ABI method call - -#### Defined in - -[src/types/app.ts:149](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L149) +[src/types/app.ts:84](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L84) ___ @@ -96,19 +83,19 @@ Arguments to pass to an app call either: #### Defined in -[src/types/app.ts:94](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L94) +[src/types/app.ts:95](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L95) ___ ### AppCallTransactionResult -Ƭ **AppCallTransactionResult**: [`AppCallTransactionResultOfType`](../interfaces/types_app.AppCallTransactionResultOfType.md)\<[`ABIReturn`](types_app.md#abireturn)\> +Ƭ **AppCallTransactionResult**: [`AppCallTransactionResultOfType`](../interfaces/types_app.AppCallTransactionResultOfType.md)\<`ABIReturn`\> Result from calling an app #### Defined in -[src/types/app.ts:146](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L146) +[src/types/app.ts:147](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L147) ___ @@ -130,7 +117,7 @@ ___ #### Defined in -[src/types/app.ts:231](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L231) +[src/types/app.ts:222](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L222) ___ @@ -142,19 +129,19 @@ Result from sending a single app transaction. #### Defined in -[src/types/app.ts:248](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L248) +[src/types/app.ts:239](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L239) ___ ### SendAppTransactionResult -Ƭ **SendAppTransactionResult**: [`Expand`](types_expand.md#expand)\<[`SendSingleTransactionResult`](types_transaction.md#sendsingletransactionresult) & \{ `return?`: [`ABIReturn`](types_app.md#abireturn) }\> +Ƭ **SendAppTransactionResult**: [`Expand`](types_expand.md#expand)\<[`SendSingleTransactionResult`](types_transaction.md#sendsingletransactionresult) & \{ `return?`: `ABIReturn` }\> Result from sending a single app transaction. #### Defined in -[src/types/app.ts:237](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L237) +[src/types/app.ts:228](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L228) ___ @@ -166,7 +153,7 @@ Result from sending a single app transaction. #### Defined in -[src/types/app.ts:245](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L245) +[src/types/app.ts:236](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L236) ## Variables @@ -178,7 +165,7 @@ First 4 bytes of SHA-512/256 hash of "return" for retrieving ABI return values #### Defined in -[src/types/app.ts:31](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L31) +[src/types/app.ts:32](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L32) ___ @@ -190,7 +177,7 @@ The app create/update [ARC-2](https://github.com/algorandfoundation/ARCs/blob/ma #### Defined in -[src/types/app.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L25) +[src/types/app.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L26) ___ @@ -202,7 +189,7 @@ The maximum number of bytes in a single app code page #### Defined in -[src/types/app.ts:28](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L28) +[src/types/app.ts:29](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L29) ___ @@ -214,7 +201,7 @@ The name of the TEAL template variable for deploy-time permanence control #### Defined in -[src/types/app.ts:22](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L22) +[src/types/app.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L23) ___ @@ -226,4 +213,4 @@ The name of the TEAL template variable for deploy-time immutability control #### Defined in -[src/types/app.ts:19](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L19) +[src/types/app.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L20) diff --git a/docs/code/modules/types_app_arc56.md b/docs/code/modules/types_app_arc56.md deleted file mode 100644 index 906f8c150..000000000 --- a/docs/code/modules/types_app_arc56.md +++ /dev/null @@ -1,346 +0,0 @@ -[@algorandfoundation/algokit-utils](../README.md) / types/app-arc56 - -# Module: types/app-arc56 - -## Table of contents - -### Classes - -- [Arc56Method](../classes/types_app_arc56.Arc56Method.md) - -### Interfaces - -- [Arc56Contract](../interfaces/types_app_arc56.Arc56Contract.md) -- [Event](../interfaces/types_app_arc56.Event.md) -- [Method](../interfaces/types_app_arc56.Method.md) -- [ProgramSourceInfo](../interfaces/types_app_arc56.ProgramSourceInfo.md) -- [StorageKey](../interfaces/types_app_arc56.StorageKey.md) -- [StorageMap](../interfaces/types_app_arc56.StorageMap.md) -- [StructField](../interfaces/types_app_arc56.StructField.md) - -### Type Aliases - -- [ABIStruct](types_app_arc56.md#abistruct) -- [ABIType](types_app_arc56.md#abitype) -- [AVMBytes](types_app_arc56.md#avmbytes) -- [AVMString](types_app_arc56.md#avmstring) -- [AVMType](types_app_arc56.md#avmtype) -- [AVMUint64](types_app_arc56.md#avmuint64) -- [Arc56MethodArg](types_app_arc56.md#arc56methodarg) -- [Arc56MethodReturnType](types_app_arc56.md#arc56methodreturntype) -- [StructName](types_app_arc56.md#structname) - -### Functions - -- [getABIDecodedValue](types_app_arc56.md#getabidecodedvalue) -- [getABIEncodedValue](types_app_arc56.md#getabiencodedvalue) -- [getABIStructFromABITuple](types_app_arc56.md#getabistructfromabituple) -- [getABITupleFromABIStruct](types_app_arc56.md#getabituplefromabistruct) -- [getABITupleTypeFromABIStructDefinition](types_app_arc56.md#getabitupletypefromabistructdefinition) -- [getArc56Method](types_app_arc56.md#getarc56method) -- [getArc56ReturnValue](types_app_arc56.md#getarc56returnvalue) - -## Type Aliases - -### ABIStruct - -Ƭ **ABIStruct**: `Object` - -Decoded ARC-56 struct as a struct rather than a tuple. - -#### Index signature - -▪ [key: `string`]: [`ABIStruct`](types_app_arc56.md#abistruct) \| `algosdk.ABIValue` - -#### Defined in - -[src/types/app-arc56.ts:122](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L122) - -___ - -### ABIType - -Ƭ **ABIType**: `string` - -An ABI-encoded type - -#### Defined in - -[src/types/app-arc56.ts:453](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L453) - -___ - -### AVMBytes - -Ƭ **AVMBytes**: ``"AVMBytes"`` - -Raw byteslice without the length prefixed that is specified in ARC-4 - -#### Defined in - -[src/types/app-arc56.ts:459](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L459) - -___ - -### AVMString - -Ƭ **AVMString**: ``"AVMString"`` - -A utf-8 string without the length prefix that is specified in ARC-4 - -#### Defined in - -[src/types/app-arc56.ts:462](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L462) - -___ - -### AVMType - -Ƭ **AVMType**: [`AVMBytes`](types_app_arc56.md#avmbytes) \| [`AVMString`](types_app_arc56.md#avmstring) \| [`AVMUint64`](types_app_arc56.md#avmuint64) - -A native AVM type - -#### Defined in - -[src/types/app-arc56.ts:468](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L468) - -___ - -### AVMUint64 - -Ƭ **AVMUint64**: ``"AVMUint64"`` - -A 64-bit unsigned integer - -#### Defined in - -[src/types/app-arc56.ts:465](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L465) - -___ - -### Arc56MethodArg - -Ƭ **Arc56MethodArg**: [`Expand`](types_expand.md#expand)\<`Omit`\<[`Method`](../interfaces/types_app_arc56.Method.md)[``"args"``][`number`], ``"type"``\> & \{ `type`: `algosdk.ABIArgumentType` }\> - -Type to describe an argument within an `Arc56Method`. - -#### Defined in - -[src/types/app-arc56.ts:7](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L7) - -___ - -### Arc56MethodReturnType - -Ƭ **Arc56MethodReturnType**: [`Expand`](types_expand.md#expand)\<`Omit`\<[`Method`](../interfaces/types_app_arc56.Method.md)[``"returns"``], ``"type"``\> & \{ `type`: `algosdk.ABIReturnType` }\> - -Type to describe a return type within an `Arc56Method`. - -#### Defined in - -[src/types/app-arc56.ts:14](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L14) - -___ - -### StructName - -Ƭ **StructName**: `string` - -The name of a defined struct - -#### Defined in - -[src/types/app-arc56.ts:456](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L456) - -## Functions - -### getABIDecodedValue - -▸ **getABIDecodedValue**(`value`, `type`, `structs`): `algosdk.ABIValue` \| [`ABIStruct`](types_app_arc56.md#abistruct) - -Returns the decoded ABI value (or struct for a struct type) -for the given raw Algorand value given an ARC-56 type and defined ARC-56 structs. - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `value` | `number` \| `bigint` \| `Uint8Array` | The raw Algorand value (bytes or uint64) | -| `type` | `string` | The ARC-56 type - either an ABI Type string or a struct name | -| `structs` | `Record`\<`string`, [`StructField`](../interfaces/types_app_arc56.StructField.md)[]\> | The defined ARC-56 structs | - -#### Returns - -`algosdk.ABIValue` \| [`ABIStruct`](types_app_arc56.md#abistruct) - -The decoded ABI value or struct - -#### Defined in - -[src/types/app-arc56.ts:134](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L134) - -___ - -### getABIEncodedValue - -▸ **getABIEncodedValue**(`value`, `type`, `structs`): `Uint8Array` - -Returns the ABI-encoded value for the given value. - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `value` | `ABIValue` \| [`ABIStruct`](types_app_arc56.md#abistruct) | The value to encode either already in encoded binary form (`Uint8Array`), a decoded ABI value or an ARC-56 struct | -| `type` | `string` | The ARC-56 type - either an ABI Type string or a struct name | -| `structs` | `Record`\<`string`, [`StructField`](../interfaces/types_app_arc56.StructField.md)[]\> | The defined ARC-56 structs | - -#### Returns - -`Uint8Array` - -The binary ABI-encoded value - -#### Defined in - -[src/types/app-arc56.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L159) - -___ - -### getABIStructFromABITuple - -▸ **getABIStructFromABITuple**\<`TReturn`\>(`decodedABITuple`, `structFields`, `structs`): `TReturn` - -Converts a decoded ABI tuple as a struct. - -#### Type parameters - -| Name | Type | -| :------ | :------ | -| `TReturn` | extends [`ABIStruct`](types_app_arc56.md#abistruct) = `Record`\<`string`, `any`\> | - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `decodedABITuple` | `ABIValue`[] | The decoded ABI tuple value | -| `structFields` | [`StructField`](../interfaces/types_app_arc56.StructField.md)[] | The struct fields from an ARC-56 app spec | -| `structs` | `Record`\<`string`, [`StructField`](../interfaces/types_app_arc56.StructField.md)[]\> | - | - -#### Returns - -`TReturn` - -The struct as a Record - -#### Defined in - -[src/types/app-arc56.ts:71](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L71) - -___ - -### getABITupleFromABIStruct - -▸ **getABITupleFromABIStruct**(`struct`, `structFields`, `structs`): `algosdk.ABIValue`[] - -Converts an ARC-56 struct as an ABI tuple. - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `struct` | [`ABIStruct`](types_app_arc56.md#abistruct) | The struct to convert | -| `structFields` | [`StructField`](../interfaces/types_app_arc56.StructField.md)[] | The struct fields from an ARC-56 app spec | -| `structs` | `Record`\<`string`, [`StructField`](../interfaces/types_app_arc56.StructField.md)[]\> | - | - -#### Returns - -`algosdk.ABIValue`[] - -The struct as a decoded ABI tuple - -#### Defined in - -[src/types/app-arc56.ts:108](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L108) - -___ - -### getABITupleTypeFromABIStructDefinition - -▸ **getABITupleTypeFromABIStructDefinition**(`struct`, `structs`): `algosdk.ABITupleType` - -Returns the `ABITupleType` for the given ARC-56 struct definition - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `struct` | [`StructField`](../interfaces/types_app_arc56.StructField.md)[] | The ARC-56 struct definition | -| `structs` | `Record`\<`string`, [`StructField`](../interfaces/types_app_arc56.StructField.md)[]\> | - | - -#### Returns - -`algosdk.ABITupleType` - -The `ABITupleType` - -#### Defined in - -[src/types/app-arc56.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L49) - -___ - -### getArc56Method - -▸ **getArc56Method**(`methodNameOrSignature`, `appSpec`): [`Arc56Method`](../classes/types_app_arc56.Arc56Method.md) - -Returns the ARC-56 ABI method object for a given method name or signature and ARC-56 app spec. - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `methodNameOrSignature` | `string` | The method name or method signature to call if an ABI call is being emitted. e.g. `my_method` or `my_method(unit64,string)bytes` | -| `appSpec` | [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) | The app spec for the app | - -#### Returns - -[`Arc56Method`](../classes/types_app_arc56.Arc56Method.md) - -The `Arc56Method` - -#### Defined in - -[src/types/app-arc56.ts:189](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L189) - -___ - -### getArc56ReturnValue - -▸ **getArc56ReturnValue**\<`TReturn`\>(`returnValue`, `method`, `structs`): `TReturn` - -Checks for decode errors on the AppCallTransactionResult and maps the return value to the specified generic type - -#### Type parameters - -| Name | Type | -| :------ | :------ | -| `TReturn` | extends `undefined` \| `ABIValue` \| [`ABIStruct`](types_app_arc56.md#abistruct) | - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `returnValue` | `undefined` \| [`ABIReturn`](types_app.md#abireturn) | The smart contract response | -| `method` | [`Method`](../interfaces/types_app_arc56.Method.md) \| [`Arc56Method`](../classes/types_app_arc56.Arc56Method.md) | The method that was called | -| `structs` | `Record`\<`string`, [`StructField`](../interfaces/types_app_arc56.StructField.md)[]\> | The struct fields from the app spec | - -#### Returns - -`TReturn` - -The smart contract response with an updated return value - -#### Defined in - -[src/types/app-arc56.ts:220](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-arc56.ts#L220) diff --git a/docs/code/modules/types_app_client.md b/docs/code/modules/types_app_client.md index 6ed8bd7d0..ebf0d75ae 100644 --- a/docs/code/modules/types_app_client.md +++ b/docs/code/modules/types_app_client.md @@ -59,7 +59,7 @@ AppClient common parameters for a bare app call #### Defined in -[src/types/app-client.ts:298](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L298) +[src/types/app-client.ts:305](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L305) ___ @@ -71,7 +71,7 @@ The arguments to pass to an Application Client smart contract call #### Defined in -[src/types/app-client.ts:176](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L176) +[src/types/app-client.ts:183](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L183) ___ @@ -83,7 +83,7 @@ Parameters to construct a ApplicationClient contract call #### Defined in -[src/types/app-client.ts:189](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L189) +[src/types/app-client.ts:196](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L196) ___ @@ -93,7 +93,7 @@ ___ #### Defined in -[src/types/app-client.ts:168](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L168) +[src/types/app-client.ts:175](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L175) ___ @@ -105,7 +105,7 @@ Parameters to construct a ApplicationClient clear state contract call #### Defined in -[src/types/app-client.ts:192](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L192) +[src/types/app-client.ts:199](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L199) ___ @@ -123,7 +123,7 @@ On-complete action parameter for creating a contract using ApplicationClient #### Defined in -[src/types/app-client.ts:204](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L204) +[src/types/app-client.ts:211](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L211) ___ @@ -135,19 +135,19 @@ Parameters for creating a contract using ApplicationClient #### Defined in -[src/types/app-client.ts:210](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L210) +[src/types/app-client.ts:217](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L217) ___ ### AppClientMethodCallParams -Ƭ **AppClientMethodCallParams**: [`Expand`](types_expand.md#expand)\<`Omit`\<[`CommonAppCallParams`](types_composer.md#commonappcallparams), ``"appId"`` \| ``"sender"`` \| ``"method"`` \| ``"args"``\> & \{ `args?`: (`ABIValue` \| [`ABIStruct`](types_app_arc56.md#abistruct) \| [`AppMethodCallTransactionArgument`](types_composer.md#appmethodcalltransactionargument) \| `undefined`)[] ; `method`: `string` ; `sender?`: `ReadableAddress` }\> +Ƭ **AppClientMethodCallParams**: [`Expand`](types_expand.md#expand)\<`Omit`\<[`CommonAppCallParams`](types_composer.md#commonappcallparams), ``"appId"`` \| ``"sender"`` \| ``"method"`` \| ``"args"``\> & \{ `args?`: (`ABIValue` \| [`AppMethodCallTransactionArgument`](types_composer.md#appmethodcalltransactionargument) \| `undefined`)[] ; `method`: `string` ; `sender?`: `ReadableAddress` }\> AppClient common parameters for an ABI method call #### Defined in -[src/types/app-client.ts:306](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L306) +[src/types/app-client.ts:313](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L313) ___ @@ -159,7 +159,7 @@ Parameters for updating a contract using ApplicationClient #### Defined in -[src/types/app-client.ts:218](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L218) +[src/types/app-client.ts:225](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L225) ___ @@ -171,7 +171,7 @@ The details of an AlgoKit Utils deployed app #### Defined in -[src/types/app-client.ts:106](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L106) +[src/types/app-client.ts:113](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L113) ___ @@ -191,7 +191,7 @@ The details of an AlgoKit Utils deployed app #### Defined in -[src/types/app-client.ts:94](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L94) +[src/types/app-client.ts:101](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L101) ___ @@ -203,7 +203,7 @@ The details of an ARC-0032 app spec specified, AlgoKit Utils deployed app #### Defined in -[src/types/app-client.ts:124](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L124) +[src/types/app-client.ts:131](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L131) ___ @@ -221,7 +221,7 @@ The details of an ARC-0032 app spec specified, AlgoKit Utils deployed app #### Defined in -[src/types/app-client.ts:109](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L109) +[src/types/app-client.ts:116](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L116) ___ @@ -233,7 +233,7 @@ The details of an ARC-0032 app spec specified, AlgoKit Utils deployed app by cre #### Defined in -[src/types/app-client.ts:121](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L121) +[src/types/app-client.ts:128](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L128) ___ @@ -245,7 +245,7 @@ The details of an ARC-0032 app spec specified, AlgoKit Utils deployed app by id #### Defined in -[src/types/app-client.ts:118](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L118) +[src/types/app-client.ts:125](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L125) ___ @@ -263,7 +263,7 @@ onComplete parameter for a non-update app call #### Defined in -[src/types/app-client.ts:292](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L292) +[src/types/app-client.ts:299](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L299) ___ @@ -275,7 +275,7 @@ Parameters to clone an app client #### Defined in -[src/types/app-client.ts:289](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L289) +[src/types/app-client.ts:296](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L296) ___ @@ -287,7 +287,7 @@ Parameters for funding an app account #### Defined in -[src/types/app-client.ts:331](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L331) +[src/types/app-client.ts:338](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L338) ___ @@ -299,7 +299,7 @@ Configuration to resolve app by creator and name `getCreatorAppsByName` #### Defined in -[src/types/app-client.ts:75](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L75) +[src/types/app-client.ts:82](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L82) ___ @@ -319,7 +319,7 @@ Configuration to resolve app by creator and name `getCreatorAppsByName` #### Defined in -[src/types/app-client.ts:62](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L62) +[src/types/app-client.ts:69](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L69) ___ @@ -331,7 +331,7 @@ Resolve an app client instance by looking up an app created by the given creator #### Defined in -[src/types/app-client.ts:340](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L340) +[src/types/app-client.ts:347](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L347) ___ @@ -343,4 +343,4 @@ Resolve an app client instance by looking up the current network. #### Defined in -[src/types/app-client.ts:354](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L354) +[src/types/app-client.ts:361](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L361) diff --git a/docs/code/modules/types_app_deployer.md b/docs/code/modules/types_app_deployer.md index 0419c52a1..effcebeaa 100644 --- a/docs/code/modules/types_app_deployer.md +++ b/docs/code/modules/types_app_deployer.md @@ -38,7 +38,7 @@ ___ ### AppDeployResult -Ƭ **AppDeployResult**: [`Expand`](types_expand.md#expand)\<\{ `operationPerformed`: ``"create"`` } & `Omit`\<[`AppMetadata`](../interfaces/types_app_deployer.AppMetadata.md), ``"appId"`` \| ``"appAddress"``\> & [`SendAppCreateTransactionResult`](types_app.md#sendappcreatetransactionresult)\> \| [`Expand`](types_expand.md#expand)\<\{ `operationPerformed`: ``"update"`` } & [`AppMetadata`](../interfaces/types_app_deployer.AppMetadata.md) & [`SendAppUpdateTransactionResult`](types_app.md#sendappupdatetransactionresult)\> \| [`Expand`](types_expand.md#expand)\<\{ `operationPerformed`: ``"replace"`` } & `Omit`\<[`AppMetadata`](../interfaces/types_app_deployer.AppMetadata.md), ``"appId"`` \| ``"appAddress"``\> & [`SendAppCreateTransactionResult`](types_app.md#sendappcreatetransactionresult) & \{ `deleteResult`: [`ConfirmedTransactionResult`](../interfaces/types_transaction.ConfirmedTransactionResult.md) ; `deleteReturn?`: [`ABIReturn`](types_app.md#abireturn) }\> \| [`Expand`](types_expand.md#expand)\<\{ `operationPerformed`: ``"nothing"`` } & [`AppMetadata`](../interfaces/types_app_deployer.AppMetadata.md)\> +Ƭ **AppDeployResult**: [`Expand`](types_expand.md#expand)\<\{ `operationPerformed`: ``"create"`` } & `Omit`\<[`AppMetadata`](../interfaces/types_app_deployer.AppMetadata.md), ``"appId"`` \| ``"appAddress"``\> & [`SendAppCreateTransactionResult`](types_app.md#sendappcreatetransactionresult)\> \| [`Expand`](types_expand.md#expand)\<\{ `operationPerformed`: ``"update"`` } & [`AppMetadata`](../interfaces/types_app_deployer.AppMetadata.md) & [`SendAppUpdateTransactionResult`](types_app.md#sendappupdatetransactionresult)\> \| [`Expand`](types_expand.md#expand)\<\{ `operationPerformed`: ``"replace"`` } & `Omit`\<[`AppMetadata`](../interfaces/types_app_deployer.AppMetadata.md), ``"appId"`` \| ``"appAddress"``\> & [`SendAppCreateTransactionResult`](types_app.md#sendappcreatetransactionresult) & \{ `deleteResult`: [`ConfirmedTransactionResult`](../interfaces/types_transaction.ConfirmedTransactionResult.md) ; `deleteReturn?`: `ABIReturn` }\> \| [`Expand`](types_expand.md#expand)\<\{ `operationPerformed`: ``"nothing"`` } & [`AppMetadata`](../interfaces/types_app_deployer.AppMetadata.md)\> #### Defined in diff --git a/docs/code/modules/types_app_factory.md b/docs/code/modules/types_app_factory.md index 1a2d137b5..dddf3e7ea 100644 --- a/docs/code/modules/types_app_factory.md +++ b/docs/code/modules/types_app_factory.md @@ -32,7 +32,7 @@ Params to get an app client by ID from an app factory. #### Defined in -[src/types/app-factory.ts:131](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L131) +[src/types/app-factory.ts:116](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L116) ___ @@ -44,7 +44,7 @@ Params to specify a create method call for an app #### Defined in -[src/types/app-factory.ts:126](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L126) +[src/types/app-factory.ts:111](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L111) ___ @@ -56,7 +56,7 @@ Params to specify a bare (raw) create call for an app #### Defined in -[src/types/app-factory.ts:123](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L123) +[src/types/app-factory.ts:108](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L108) ___ @@ -68,7 +68,7 @@ Parameters to define a deployment for an `AppFactory` #### Defined in -[src/types/app-factory.ts:137](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L137) +[src/types/app-factory.ts:122](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L122) ___ @@ -80,7 +80,7 @@ Params to get an app client by creator address and name from an app factory. #### Defined in -[src/types/app-factory.ts:134](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L134) +[src/types/app-factory.ts:119](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L119) ___ @@ -98,7 +98,7 @@ onComplete parameter for a create app call #### Defined in -[src/types/app-factory.ts:99](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L99) +[src/types/app-factory.ts:84](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L84) ___ @@ -121,4 +121,4 @@ Specifies a schema used for creating an app #### Defined in -[src/types/app-factory.ts:104](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L104) +[src/types/app-factory.ts:89](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-factory.ts#L89) diff --git a/docs/code/modules/types_app_manager.md b/docs/code/modules/types_app_manager.md index 9035f2b0e..b471ed0b4 100644 --- a/docs/code/modules/types_app_manager.md +++ b/docs/code/modules/types_app_manager.md @@ -33,4 +33,4 @@ Something that identifies an app box name - either a: #### Defined in -[src/types/app-manager.ts:60](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L60) +[src/types/app-manager.ts:59](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L59) diff --git a/docs/code/modules/types_app_spec.md b/docs/code/modules/types_app_spec.md index f7c6232cf..154a39385 100644 --- a/docs/code/modules/types_app_spec.md +++ b/docs/code/modules/types_app_spec.md @@ -42,7 +42,7 @@ The string name of an ABI type #### Defined in -[src/types/app-spec.ts:210](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L210) +[src/types/app-spec.ts:259](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L259) ___ @@ -54,7 +54,7 @@ AVM data type #### Defined in -[src/types/app-spec.ts:266](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L266) +[src/types/app-spec.ts:315](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L315) ___ @@ -70,19 +70,19 @@ The various call configs: #### Defined in -[src/types/app-spec.ts:181](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L181) +[src/types/app-spec.ts:230](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L230) ___ ### DefaultArgument -Ƭ **DefaultArgument**: \{ `data`: `ABIMethodParams` ; `source`: ``"abi-method"`` } \| \{ `data`: `string` ; `source`: ``"global-state"`` } \| \{ `data`: `string` ; `source`: ``"local-state"`` } \| \{ `data`: `string` \| `number` ; `source`: ``"constant"`` } +Ƭ **DefaultArgument**: \{ `data`: `ABIMethod` ; `source`: ``"abi-method"`` } \| \{ `data`: `string` ; `source`: ``"global-state"`` } \| \{ `data`: `string` ; `source`: ``"local-state"`` } \| \{ `data`: `string` \| `number` ; `source`: ``"constant"`` } Defines a strategy for obtaining a default value for a given ABI arg. #### Defined in -[src/types/app-spec.ts:226](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L226) +[src/types/app-spec.ts:275](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L275) ___ @@ -94,7 +94,7 @@ The name of a field #### Defined in -[src/types/app-spec.ts:207](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L207) +[src/types/app-spec.ts:256](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L256) ___ @@ -106,7 +106,7 @@ A lookup of encoded method call spec to hint #### Defined in -[src/types/app-spec.ts:165](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L165) +[src/types/app-spec.ts:214](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L214) ___ @@ -125,7 +125,7 @@ Schema spec summary for global or local storage #### Defined in -[src/types/app-spec.ts:315](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L315) +[src/types/app-spec.ts:364](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L364) ___ @@ -137,13 +137,13 @@ The elements of the struct/tuple: `FieldName`, `ABIType` #### Defined in -[src/types/app-spec.ts:213](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L213) +[src/types/app-spec.ts:262](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L262) ## Functions ### arc32ToArc56 -▸ **arc32ToArc56**(`appSpec`): [`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +▸ **arc32ToArc56**(`appSpec`): `Arc56Contract` Converts an ARC-32 Application Specification to an ARC-56 Contract @@ -155,7 +155,7 @@ Converts an ARC-32 Application Specification to an ARC-56 Contract #### Returns -[`Arc56Contract`](../interfaces/types_app_arc56.Arc56Contract.md) +`Arc56Contract` The ARC-56 Contract @@ -167,4 +167,4 @@ const arc56AppSpec = arc32ToArc56(arc32AppSpec) #### Defined in -[src/types/app-spec.ts:14](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L14) +[src/types/app-spec.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L20) diff --git a/docs/code/modules/types_composer.md b/docs/code/modules/types_composer.md index 3efa0f3a1..a1fcb8bf3 100644 --- a/docs/code/modules/types_composer.md +++ b/docs/code/modules/types_composer.md @@ -61,7 +61,7 @@ Parameters to define an ABI method call transaction. #### Defined in -[src/transactions/method-call.ts:33](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L33) +[src/transactions/method-call.ts:32](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L32) ___ @@ -85,7 +85,7 @@ Parameters to define an ABI method call create transaction. #### Defined in -[src/transactions/method-call.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L27) +[src/transactions/method-call.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L26) ___ @@ -109,7 +109,7 @@ Parameters to define an ABI method call delete transaction. #### Defined in -[src/transactions/method-call.ts:31](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L31) +[src/transactions/method-call.ts:30](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L30) ___ @@ -139,7 +139,7 @@ Parameters to define an ABI method call. #### Defined in -[src/transactions/method-call.ts:64](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L64) +[src/transactions/method-call.ts:63](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L63) ___ @@ -163,7 +163,7 @@ Types that can be used to define a transaction argument for an ABI call transact #### Defined in -[src/transactions/method-call.ts:54](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L54) +[src/transactions/method-call.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L53) ___ @@ -175,7 +175,7 @@ Parameters to define an ABI method call update transaction. #### Defined in -[src/transactions/method-call.ts:29](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L29) +[src/transactions/method-call.ts:28](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L28) ___ @@ -394,7 +394,7 @@ ___ #### Defined in -[src/transactions/method-call.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L47) +[src/transactions/method-call.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L46) ___ @@ -404,7 +404,7 @@ ___ #### Defined in -[src/transactions/method-call.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L35) +[src/transactions/method-call.ts:34](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L34) ___ @@ -414,7 +414,7 @@ ___ #### Defined in -[src/transactions/method-call.ts:41](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L41) +[src/transactions/method-call.ts:40](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/transactions/method-call.ts#L40) ___ From 20274d461414269122db5765dd17a7e06f5b8cc6 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 14:18:34 +1000 Subject: [PATCH 34/43] remove more from sdk --- packages/sdk/src/encoding/bigint.ts | 33 --------- packages/sdk/src/encoding/schema/address.ts | 47 ------------- packages/sdk/src/encoding/schema/blockhash.ts | 67 ------------------- packages/sdk/src/encoding/schema/index.ts | 3 - packages/sdk/src/index.ts | 17 ----- packages/sdk/src/signing.ts | 2 +- packages/sdk/src/types/account.ts | 2 +- src/app-deploy.spec.ts | 2 +- src/app.spec.ts | 4 +- src/indexer-lookup.spec.ts | 2 +- src/indexer-lookup.ts | 3 +- src/testing/_asset.ts | 2 +- src/testing/account.ts | 5 +- src/transaction/transaction.spec.ts | 11 +-- src/transactions/common.ts | 4 +- src/transactions/method-call.ts | 4 +- src/types/account-manager.ts | 6 +- src/types/account.ts | 3 +- .../algorand-client-transaction-sender.ts | 4 +- src/types/algorand-client.ts | 3 +- src/types/app-client.spec.ts | 7 +- src/types/app-client.ts | 4 +- src/types/app-deployer.ts | 6 +- src/types/app-factory-and-client.spec.ts | 7 +- src/types/app-manager.ts | 6 +- src/types/app.ts | 3 +- src/types/asset-manager.ts | 2 +- src/types/dispenser-client.ts | 2 +- src/types/kmd-account-manager.ts | 2 +- src/types/testing.ts | 3 +- .../example-contracts/testing-app/contract.ts | 2 +- 31 files changed, 55 insertions(+), 213 deletions(-) delete mode 100644 packages/sdk/src/encoding/bigint.ts delete mode 100644 packages/sdk/src/encoding/schema/address.ts delete mode 100644 packages/sdk/src/encoding/schema/blockhash.ts diff --git a/packages/sdk/src/encoding/bigint.ts b/packages/sdk/src/encoding/bigint.ts deleted file mode 100644 index afe529181..000000000 --- a/packages/sdk/src/encoding/bigint.ts +++ /dev/null @@ -1,33 +0,0 @@ -/** - * bigIntToBytes converts a BigInt to a big-endian Uint8Array for encoding. - * @param bi - The bigint to convert. - * @param size - The size of the resulting byte array. - * @returns A byte array containing the big-endian encoding of the input bigint - */ -export function bigIntToBytes(bi: bigint | number, size: number) { - let hex = bi.toString(16) - // Pad the hex with zeros so it matches the size in bytes - if (hex.length !== size * 2) { - hex = hex.padStart(size * 2, '0') - } - const byteArray = new Uint8Array(hex.length / 2) - for (let i = 0, j = 0; i < hex.length / 2; i++, j += 2) { - byteArray[i] = parseInt(hex.slice(j, j + 2), 16) - } - return byteArray -} - -/** - * bytesToBigInt produces a bigint from a binary representation. - * - * @param bytes - The Uint8Array to convert. - * @returns The bigint that was encoded in the input data. - */ -export function bytesToBigInt(bytes: Uint8Array) { - let res = BigInt(0) - const buf = new DataView(bytes.buffer, bytes.byteOffset) - for (let i = 0; i < bytes.length; i++) { - res = BigInt(Number(buf.getUint8(i))) + res * BigInt(256) - } - return res -} diff --git a/packages/sdk/src/encoding/schema/address.ts b/packages/sdk/src/encoding/schema/address.ts deleted file mode 100644 index 873b0f441..000000000 --- a/packages/sdk/src/encoding/schema/address.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js' -import { Address } from '../address.js' - -/* eslint-disable class-methods-use-this */ - -export class AddressSchema extends Schema { - public defaultValue(): Address { - return Address.zeroAddress() - } - - public isDefaultValue(data: unknown): boolean { - // The equals method checks if the input is an Address - return Address.zeroAddress().equals(data as Address) - } - - public prepareMsgpack(data: unknown): MsgpackEncodingData { - if (data instanceof Address) { - return data.publicKey - } - throw new Error(`Invalid address: (${typeof data}) ${data}`) - } - - public fromPreparedMsgpack( - encoded: MsgpackEncodingData, - // eslint-disable-next-line @typescript-eslint/no-unused-vars - _rawStringProvider: MsgpackRawStringProvider, - ): Address { - // The Address constructor checks that the input is a Uint8Array - return new Address(encoded as Uint8Array) - } - - public prepareJSON( - data: unknown, - // eslint-disable-next-line @typescript-eslint/no-unused-vars - _options: PrepareJSONOptions, - ): JSONEncodingData { - if (data instanceof Address) { - return data.toString() - } - throw new Error(`Invalid address: (${typeof data}) ${data}`) - } - - public fromPreparedJSON(encoded: JSONEncodingData): Address { - // The Address.fromString method checks that the input is a string - return Address.fromString(encoded as string) - } -} diff --git a/packages/sdk/src/encoding/schema/blockhash.ts b/packages/sdk/src/encoding/schema/blockhash.ts deleted file mode 100644 index 0eeac73b7..000000000 --- a/packages/sdk/src/encoding/schema/blockhash.ts +++ /dev/null @@ -1,67 +0,0 @@ -import base32 from 'hi-base32' -import { Schema, MsgpackEncodingData, MsgpackRawStringProvider, JSONEncodingData, PrepareJSONOptions } from '../encoding.js' - -/** - * Length of a block hash in bytes - */ -const blockHashByteLength = 32 - -/* eslint-disable class-methods-use-this */ - -/** - * Length of a 32-byte encoded in base32 without padding - */ -const base32Length = 52 - -/** - * BlockHashSchema is a schema for block hashes. - * - * In msgapck, these types are encoded as 32-byte binary strings. In JSON, they - * are encoded as strings prefixed with "blk-" followed by the base32 encoding - * of the 32-byte block hash without any padding. - */ -export class BlockHashSchema extends Schema { - public defaultValue(): Uint8Array { - return new Uint8Array(blockHashByteLength) - } - - public isDefaultValue(data: unknown): boolean { - return data instanceof Uint8Array && data.byteLength === blockHashByteLength && data.every((byte) => byte === 0) - } - - public prepareMsgpack(data: unknown): MsgpackEncodingData { - if (data instanceof Uint8Array && data.byteLength === blockHashByteLength) { - return data - } - throw new Error(`Invalid block hash: (${typeof data}) ${data}`) - } - - public fromPreparedMsgpack( - encoded: MsgpackEncodingData, - // eslint-disable-next-line @typescript-eslint/no-unused-vars - _rawStringProvider: MsgpackRawStringProvider, - ): Uint8Array { - if (encoded instanceof Uint8Array && encoded.byteLength === blockHashByteLength) { - return encoded - } - throw new Error(`Invalid block hash: (${typeof encoded}) ${encoded}`) - } - - public prepareJSON( - data: unknown, - // eslint-disable-next-line @typescript-eslint/no-unused-vars - _options: PrepareJSONOptions, - ): JSONEncodingData { - if (data instanceof Uint8Array && data.byteLength === blockHashByteLength) { - return `blk-${base32.encode(data).slice(0, base32Length)}` - } - throw new Error(`Invalid block hash: (${typeof data}) ${data}`) - } - - public fromPreparedJSON(encoded: JSONEncodingData): Uint8Array { - if (typeof encoded === 'string' && encoded.length === base32Length + 4 && encoded.startsWith('blk-')) { - return Uint8Array.from(base32.decode.asBytes(encoded.slice(4))) - } - throw new Error(`Invalid block hash: (${typeof encoded}) ${encoded}`) - } -} diff --git a/packages/sdk/src/encoding/schema/index.ts b/packages/sdk/src/encoding/schema/index.ts index c52742b1e..fbafff8be 100644 --- a/packages/sdk/src/encoding/schema/index.ts +++ b/packages/sdk/src/encoding/schema/index.ts @@ -2,11 +2,8 @@ export { BooleanSchema } from './boolean.js' export { StringSchema } from './string.js' export { Uint64Schema } from './uint64.js' -export { AddressSchema } from './address.js' export { ByteArraySchema, FixedLengthByteArraySchema } from './bytearray.js' -export { BlockHashSchema } from './blockhash.js' - export { ArraySchema } from './array.js' export * from './map.js' export { OptionalSchema } from './optional.js' diff --git a/packages/sdk/src/index.ts b/packages/sdk/src/index.ts index 74f43cc8f..a3a75d57a 100644 --- a/packages/sdk/src/index.ts +++ b/packages/sdk/src/index.ts @@ -1,7 +1,6 @@ import type { SignedTransaction, Transaction } from '@algorandfoundation/algokit-transact' import { encodeSignedTransaction, encodeTransaction, getTransactionId } from '@algorandfoundation/algokit-transact' import * as convert from './convert' -import { Address } from './encoding/address' import * as nacl from './nacl/naclWrappers' import * as utils from './utils/utils' @@ -54,20 +53,6 @@ export function signBytes(bytes: Uint8Array, sk: Uint8Array) { return sig } -/** - * verifyBytes takes array of bytes, an address, and a signature and verifies if the signature is correct for the public - * key and the bytes (the bytes should have been signed with "MX" prepended for domain separation). - * @param bytes - Uint8Array - * @param signature - binary signature - * @param addr - string address - * @returns bool - */ -export function verifyBytes(bytes: Uint8Array, signature: Uint8Array, addr: string | Address) { - const toBeVerified = utils.concatArrays(SIGN_BYTES_PREFIX, bytes) - const addrObj = typeof addr === 'string' ? Address.fromString(addr) : addr - return nacl.verify(toBeVerified, signature, addrObj.publicKey) -} - export const ERROR_MULTISIG_BAD_SENDER = new Error(MULTISIG_BAD_SENDER_ERROR_MSG) export const ERROR_INVALID_MICROALGOS = new Error(convert.INVALID_MICROALGOS_ERROR_MSG) @@ -78,8 +63,6 @@ export { KmdClient as Kmd } from './client/kmd' export { IndexerClient as Indexer } from './client/v2/indexer/index' export * as indexerModels from './client/v2/indexer/models/types' export * from './convert' -export { Address, decodeAddress, encodeAddress, getApplicationAddress, isValidAddress } from './encoding/address' -export { bigIntToBytes, bytesToBigInt } from './encoding/bigint' export { base64ToBytes, bytesToBase64, bytesToHex, bytesToString, coerceToBytes, hexToBytes } from './encoding/binarydata' export * from './encoding/encoding' export { decodeUint64, encodeUint64 } from './encoding/uint64' diff --git a/packages/sdk/src/signing.ts b/packages/sdk/src/signing.ts index ccbb8d134..d32bcdb03 100644 --- a/packages/sdk/src/signing.ts +++ b/packages/sdk/src/signing.ts @@ -1,6 +1,6 @@ +import { Address } from '@algorandfoundation/algokit-common' import type { LogicSignature, SignedTransaction, Transaction } from '@algorandfoundation/algokit-transact' import { encodeSignedTransaction, getTransactionId } from '@algorandfoundation/algokit-transact' -import { Address } from './encoding/address.js' import { LogicSig, LogicSigAccount } from './logicsig.js' import { addressFromMultisigPreImg } from './multisig.js' diff --git a/packages/sdk/src/types/account.ts b/packages/sdk/src/types/account.ts index 8d5f6bd14..dfdf5e5fa 100644 --- a/packages/sdk/src/types/account.ts +++ b/packages/sdk/src/types/account.ts @@ -1,4 +1,4 @@ -import { Address } from '../encoding/address.js' +import { Address } from '@algorandfoundation/algokit-common' /** * An Algorand account object. diff --git a/src/app-deploy.spec.ts b/src/app-deploy.spec.ts index 262e05e5c..bc1d267ff 100644 --- a/src/app-deploy.spec.ts +++ b/src/app-deploy.spec.ts @@ -1,4 +1,4 @@ -import { getApplicationAddress } from '@algorandfoundation/sdk' +import { getApplicationAddress } from '@algorandfoundation/algokit-common' import invariant from 'tiny-invariant' import { afterEach, beforeEach, describe, expect, test } from 'vitest' import { getTestingAppCreateParams, getTestingAppDeployParams } from '../tests/example-contracts/testing-app/contract' diff --git a/src/app.spec.ts b/src/app.spec.ts index 98448d951..6d495fdde 100644 --- a/src/app.spec.ts +++ b/src/app.spec.ts @@ -1,4 +1,4 @@ -import * as algosdk from '@algorandfoundation/sdk' +import { getApplicationAddress } from '@algorandfoundation/algokit-common' import { afterEach, beforeEach, describe, expect, test } from 'vitest' import { getTestingAppContract } from '../tests/example-contracts/testing-app/contract' import { algoKitLogCaptureFixture, algorandFixture } from './testing' @@ -22,7 +22,7 @@ describe('app', () => { }) expect(app.appId).toBeGreaterThan(0) - expect(app.appAddress).toEqual(algosdk.getApplicationAddress(app.appId)) + expect(app.appAddress).toEqual(getApplicationAddress(app.appId)) expect(app.confirmation).toBeTruthy() expect(BigInt(app.confirmation?.appId ?? 0)).toBe(app.appId) }) diff --git a/src/indexer-lookup.spec.ts b/src/indexer-lookup.spec.ts index 898d782a4..d1e7e4cd1 100644 --- a/src/indexer-lookup.spec.ts +++ b/src/indexer-lookup.spec.ts @@ -1,5 +1,5 @@ +import { Address } from '@algorandfoundation/algokit-common' import { getTransactionId } from '@algorandfoundation/algokit-transact' -import { Address } from '@algorandfoundation/sdk' import { beforeEach, describe, expect, test } from 'vitest' import { getTestingAppContract } from '../tests/example-contracts/testing-app/contract' import * as indexer from './indexer-lookup' diff --git a/src/indexer-lookup.ts b/src/indexer-lookup.ts index 841f7802a..6903cfb82 100644 --- a/src/indexer-lookup.ts +++ b/src/indexer-lookup.ts @@ -1,5 +1,6 @@ +import { Address } from '@algorandfoundation/algokit-common' import * as algosdk from '@algorandfoundation/sdk' -import { Address, Indexer } from '@algorandfoundation/sdk' +import { Indexer } from '@algorandfoundation/sdk' import { LookupAssetHoldingsOptions } from './types/indexer' export type SearchForTransactions = ReturnType diff --git a/src/testing/_asset.ts b/src/testing/_asset.ts index ba9d352b9..cc64e9b4e 100644 --- a/src/testing/_asset.ts +++ b/src/testing/_asset.ts @@ -1,4 +1,4 @@ -import { Address } from '@algorandfoundation/sdk' +import { Address } from '@algorandfoundation/algokit-common' import { AlgorandClient } from '../types/algorand-client' export async function generateTestAsset(algorand: AlgorandClient, sender: Address | string, total?: number) { diff --git a/src/testing/account.ts b/src/testing/account.ts index 46d96e202..747dd6814 100644 --- a/src/testing/account.ts +++ b/src/testing/account.ts @@ -1,10 +1,11 @@ import { AlgodClient } from '@algorandfoundation/algokit-algod-client' +import { Address } from '@algorandfoundation/algokit-common' +import { AddressWithSigner } from '@algorandfoundation/algokit-transact' import type { Account } from '@algorandfoundation/sdk' import * as algosdk from '@algorandfoundation/sdk' -import { Address, Kmd } from '@algorandfoundation/sdk' +import { Kmd } from '@algorandfoundation/sdk' import { AlgorandClient, Config } from '../' import { GetTestAccountParams } from '../types/testing' -import { AddressWithSigner } from '@algorandfoundation/algokit-transact' /** * @deprecated Use `getTestAccount(params, algorandClient)` instead. The `algorandClient` object can be created using `AlgorandClient.fromClients({ algod, kmd })`. diff --git a/src/transaction/transaction.spec.ts b/src/transaction/transaction.spec.ts index c52ff4ea0..09232bea2 100644 --- a/src/transaction/transaction.spec.ts +++ b/src/transaction/transaction.spec.ts @@ -1,7 +1,8 @@ import { ABIType } from '@algorandfoundation/algokit-abi' +import { Address, getApplicationAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner, OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { Account, Address } from '@algorandfoundation/sdk' +import { Account } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterAll, beforeAll, beforeEach, describe, expect, test } from 'vitest' import { APP_SPEC as nestedContractAppSpec } from '../../tests/example-contracts/client/TestContractClient' @@ -986,7 +987,7 @@ describe('Resource population: Mixed', () => { .addAppCallMethodCall( await v9Client.params.call({ method: 'addressBalance', - args: [algosdk.getApplicationAddress(externalAppID).toString()], + args: [getApplicationAddress(externalAppID).toString()], sender: testAccount, }), ) @@ -1045,7 +1046,7 @@ describe('Resource population: meta', () => { let externalClient: AppClient - let testAccount: algosdk.Address & algosdk.Account & AddressWithSigner + let testAccount: Address & algosdk.Account & AddressWithSigner beforeEach(fixture.newScope) @@ -1312,8 +1313,8 @@ describe('access references', () => { let appClient: AppClient let externalClient: AppClient - let alice: algosdk.Address - let getTestAccounts: (count: number) => Promise + let alice: Address + let getTestAccounts: (count: number) => Promise beforeEach(fixture.newScope) diff --git a/src/transactions/common.ts b/src/transactions/common.ts index 75a1f18b5..df261d0f7 100644 --- a/src/transactions/common.ts +++ b/src/transactions/common.ts @@ -1,7 +1,7 @@ import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' -import { ReadableAddress, getAddress, getOptionalAddress } from '@algorandfoundation/algokit-common' +import { Address, ReadableAddress, getAddress, getOptionalAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner } from '@algorandfoundation/algokit-transact' -import { Address, TransactionSigner } from '@algorandfoundation/sdk' +import { TransactionSigner } from '@algorandfoundation/sdk' import { encodeLease } from '../transaction' import { AlgoAmount } from '../types/amount' diff --git a/src/transactions/method-call.ts b/src/transactions/method-call.ts index 3bf330043..96f899936 100644 --- a/src/transactions/method-call.ts +++ b/src/transactions/method-call.ts @@ -9,9 +9,9 @@ import { argTypeIsTransaction, } from '@algorandfoundation/algokit-abi' import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' -import { getAddress } from '@algorandfoundation/algokit-common' +import { Address, getAddress } from '@algorandfoundation/algokit-common' import { OnApplicationComplete, Transaction, TransactionType } from '@algorandfoundation/algokit-transact' -import { Address, TransactionSigner } from '@algorandfoundation/sdk' +import { TransactionSigner } from '@algorandfoundation/sdk' import { TransactionWithSigner } from '../transaction' import { AlgoAmount } from '../types/amount' import { AppManager } from '../types/app-manager' diff --git a/src/types/account-manager.ts b/src/types/account-manager.ts index 2d46dc86e..837047f99 100644 --- a/src/types/account-manager.ts +++ b/src/types/account-manager.ts @@ -1,7 +1,9 @@ import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' +import { Address, ReadableAddress, getAddress } from '@algorandfoundation/algokit-common' +import { AddressWithSigner, TransactionSigner } from '@algorandfoundation/algokit-transact' import type { Account } from '@algorandfoundation/sdk' import * as algosdk from '@algorandfoundation/sdk' -import { Address, LogicSigAccount } from '@algorandfoundation/sdk' +import { LogicSigAccount } from '@algorandfoundation/sdk' import { Config } from '../config' import { calculateFundAmount, memoize } from '../util' import { AccountInformation, DISPENSER_ACCOUNT, MultisigAccount, SigningAccount } from './account' @@ -11,8 +13,6 @@ import { CommonTransactionParams, TransactionComposer } from './composer' import { TestNetDispenserApiClient } from './dispenser-client' import { KmdAccountManager } from './kmd-account-manager' import { SendParams, SendSingleTransactionResult } from './transaction' -import { AddressWithSigner, TransactionSigner } from '@algorandfoundation/algokit-transact' -import { getAddress, ReadableAddress } from '@algorandfoundation/algokit-common' /** Result from performing an ensureFunded call. */ export interface EnsureFundedResult { diff --git a/src/types/account.ts b/src/types/account.ts index d67135fba..d05ef462f 100644 --- a/src/types/account.ts +++ b/src/types/account.ts @@ -6,10 +6,11 @@ import { Asset, AssetHolding, } from '@algorandfoundation/algokit-algod-client' +import { Address } from '@algorandfoundation/algokit-common' import { AddressWithSigner, Transaction } from '@algorandfoundation/algokit-transact' import type { Account } from '@algorandfoundation/sdk' import * as algosdk from '@algorandfoundation/sdk' -import { Address, MultisigMetadata, TransactionSigner } from '@algorandfoundation/sdk' +import { MultisigMetadata, TransactionSigner } from '@algorandfoundation/sdk' import { appendSignMultisigTransaction, signMultisigTransaction } from '@algorandfoundation/sdk/src/multisigSigning' import { AlgoAmount } from './amount' diff --git a/src/types/algorand-client-transaction-sender.ts b/src/types/algorand-client-transaction-sender.ts index 7235b92a7..31288a72b 100644 --- a/src/types/algorand-client-transaction-sender.ts +++ b/src/types/algorand-client-transaction-sender.ts @@ -1,6 +1,6 @@ import { ABIMethod } from '@algorandfoundation/algokit-abi' +import { getApplicationAddress } from '@algorandfoundation/algokit-common' import { Transaction, getTransactionId } from '@algorandfoundation/algokit-transact' -import * as algosdk from '@algorandfoundation/sdk' import { Buffer } from 'buffer' import { Config } from '../config' import { asJson, defaultJsonValueReplacer } from '../util' @@ -159,7 +159,7 @@ export class AlgorandClientTransactionSender { return { ...result, appId: BigInt(result.confirmation.appId!), - appAddress: algosdk.getApplicationAddress(result.confirmation.appId!), + appAddress: getApplicationAddress(result.confirmation.appId!), } } } diff --git a/src/types/algorand-client.ts b/src/types/algorand-client.ts index 5d68da3b6..1f3f91fca 100644 --- a/src/types/algorand-client.ts +++ b/src/types/algorand-client.ts @@ -1,7 +1,8 @@ import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' +import { Address } from '@algorandfoundation/algokit-common' import type { Account } from '@algorandfoundation/sdk' import * as algosdk from '@algorandfoundation/sdk' -import { Address, LogicSigAccount } from '@algorandfoundation/sdk' +import { LogicSigAccount } from '@algorandfoundation/sdk' import { MultisigAccount, SigningAccount } from './account' import { AccountManager } from './account-manager' import { AlgorandClientTransactionCreator } from './algorand-client-transaction-creator' diff --git a/src/types/app-client.spec.ts b/src/types/app-client.spec.ts index 46e45b86c..a4da7b658 100644 --- a/src/types/app-client.spec.ts +++ b/src/types/app-client.spec.ts @@ -1,7 +1,8 @@ import { ABIMethod, ABIStructType, ABIType, ABIValue, getABIMethod } from '@algorandfoundation/algokit-abi' +import { getApplicationAddress } from '@algorandfoundation/algokit-common' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' +import { TransactionSigner } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterEach, beforeAll, beforeEach, describe, expect, test } from 'vitest' import * as algokit from '..' @@ -208,7 +209,7 @@ describe('app-client', () => { invariant(result.operationPerformed === 'replace') expect(result.appId).toBeGreaterThan(createdResult.appId) - expect(result.appAddress).toEqual(algosdk.getApplicationAddress(result.appId)) + expect(result.appAddress).toEqual(getApplicationAddress(result.appId)) invariant(result.confirmation) invariant(result.deleteResult) invariant(result.deleteResult.confirmation) @@ -242,7 +243,7 @@ describe('app-client', () => { invariant(result.operationPerformed === 'replace') expect(result.appId).toBeGreaterThan(createdResult.appId) - expect(result.appAddress).toEqual(algosdk.getApplicationAddress(result.appId)) + expect(result.appAddress).toEqual(getApplicationAddress(result.appId)) invariant(result.confirmation) invariant(result.deleteResult) invariant(result.deleteResult.confirmation) diff --git a/src/types/app-client.ts b/src/types/app-client.ts index a41d94e4f..c4526fc64 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -19,7 +19,7 @@ import { getLocalABIStorageMaps, } from '@algorandfoundation/algokit-abi' import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' -import { Address, ReadableAddress, getAddress, getOptionalAddress } from '@algorandfoundation/algokit-common' +import { Address, ReadableAddress, getAddress, getApplicationAddress, getOptionalAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner, OnApplicationComplete } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' import { Indexer, ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' @@ -463,7 +463,7 @@ export class AppClient { */ constructor(params: AppClientParams) { this._appId = params.appId - this._appAddress = algosdk.getApplicationAddress(this._appId) + this._appAddress = getApplicationAddress(this._appId) this._appSpec = AppClient.normaliseAppSpec(params.appSpec) this._appName = params.appName ?? this._appSpec.name this._algorand = params.algorand diff --git a/src/types/app-deployer.ts b/src/types/app-deployer.ts index 41ede0006..e7cceab52 100644 --- a/src/types/app-deployer.ts +++ b/src/types/app-deployer.ts @@ -1,7 +1,7 @@ import { ABIReturn } from '@algorandfoundation/algokit-abi' +import { Address, getApplicationAddress } from '@algorandfoundation/algokit-common' import { TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { Address } from '@algorandfoundation/sdk' import { Config } from '../config' import * as indexer from '../indexer-lookup' import { calculateExtraProgramPages } from '../util' @@ -320,7 +320,7 @@ export class AppDeployer { const appMetadata: AppMetadata = { appId: confirmation.appId!, - appAddress: algosdk.getApplicationAddress(confirmation.appId!), + appAddress: getApplicationAddress(confirmation.appId!), ...metadata, createdMetadata: metadata, createdRound: BigInt(confirmation.confirmedRound!), @@ -580,7 +580,7 @@ export class AppDeployer { if (creationNote?.name) { appLookup[creationNote.name] = { appId: createdApp.id, - appAddress: algosdk.getApplicationAddress(createdApp.id), + appAddress: getApplicationAddress(createdApp.id), createdMetadata: creationNote, createdRound: appCreationTransaction.confirmedRound ?? 0n, ...(updateNote ?? creationNote), diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index 9b2d867f2..24f6af340 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -1,7 +1,8 @@ import { ABIType, ABIValue, Arc56Contract, getABIMethod } from '@algorandfoundation/algokit-abi' +import { Address, getApplicationAddress } from '@algorandfoundation/algokit-common' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { Address, TransactionSigner, getApplicationAddress } from '@algorandfoundation/sdk' +import { TransactionSigner } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterEach, beforeAll, beforeEach, describe, expect, it, test } from 'vitest' import * as algokit from '..' @@ -281,7 +282,7 @@ describe('ARC32: app-factory-and-app-client', () => { invariant(app.operationPerformed === 'replace') expect(app.appId).toBeGreaterThan(createdApp.appId) - expect(app.appAddress).toEqual(algosdk.getApplicationAddress(app.appId)) + expect(app.appAddress).toEqual(getApplicationAddress(app.appId)) invariant(app.confirmation) invariant(app.deleteResult) invariant(app.deleteResult.confirmation) @@ -315,7 +316,7 @@ describe('ARC32: app-factory-and-app-client', () => { invariant(app.operationPerformed === 'replace') expect(app.appId).toBeGreaterThan(createdApp.appId) - expect(app.appAddress).toEqual(algosdk.getApplicationAddress(app.appId)) + expect(app.appAddress).toEqual(getApplicationAddress(app.appId)) invariant(app.confirmation) invariant(app.deleteResult) invariant(app.deleteResult.confirmation) diff --git a/src/types/app-manager.ts b/src/types/app-manager.ts index 38b153acd..36d147cb8 100644 --- a/src/types/app-manager.ts +++ b/src/types/app-manager.ts @@ -1,9 +1,9 @@ import { ABIMethod, ABIReturn, ABIType, ABIValue } from '@algorandfoundation/algokit-abi' import { AlgodClient, EvalDelta, PendingTransactionResponse, TealValue } from '@algorandfoundation/algokit-algod-client' -import { ReadableAddress, getAddress } from '@algorandfoundation/algokit-common' +import { Address, ReadableAddress, getAddress, getApplicationAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner, BoxReference as TransactionBoxReference } from '@algorandfoundation/algokit-transact' import * as algosdk from '@algorandfoundation/sdk' -import { Address, ProgramSourceMap } from '@algorandfoundation/sdk' +import { ProgramSourceMap } from '@algorandfoundation/sdk' import { ABI_RETURN_PREFIX, BoxName, @@ -210,7 +210,7 @@ export class AppManager { return { appId: BigInt(app.id), - appAddress: algosdk.getApplicationAddress(app.id), + appAddress: getApplicationAddress(app.id), approvalProgram: app.params.approvalProgram, clearStateProgram: app.params.clearStateProgram, creator: Address.fromString(app.params.creator), diff --git a/src/types/app.ts b/src/types/app.ts index 6bde71e86..ccb54d483 100644 --- a/src/types/app.ts +++ b/src/types/app.ts @@ -1,7 +1,8 @@ import { ABIMethod, ABIReturn, ABIType, ABIValue } from '@algorandfoundation/algokit-abi' import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' +import { Address } from '@algorandfoundation/algokit-common' import { OnApplicationComplete, BoxReference as TransactBoxReference, Transaction } from '@algorandfoundation/algokit-transact' -import { Address, ProgramSourceMap } from '@algorandfoundation/sdk' +import { ProgramSourceMap } from '@algorandfoundation/sdk' import { TransactionWithSigner } from '../transaction' import { BoxIdentifier, BoxReference } from './app-manager' import { Expand } from './expand' diff --git a/src/types/asset-manager.ts b/src/types/asset-manager.ts index f83c24213..9129813cf 100644 --- a/src/types/asset-manager.ts +++ b/src/types/asset-manager.ts @@ -1,5 +1,5 @@ import { AlgodClient } from '@algorandfoundation/algokit-algod-client' -import { Address } from '@algorandfoundation/sdk' +import { Address } from '@algorandfoundation/algokit-common' import { Config } from '../config' import { chunkArray } from '../util' import { AccountAssetInformation } from './account' diff --git a/src/types/dispenser-client.ts b/src/types/dispenser-client.ts index 01108371d..8af9cb910 100644 --- a/src/types/dispenser-client.ts +++ b/src/types/dispenser-client.ts @@ -1,4 +1,4 @@ -import { Address } from '@algorandfoundation/sdk' +import { Address } from '@algorandfoundation/algokit-common' import { asJson } from '../util' const DISPENSER_BASE_URL = 'https://api.dispenser.algorandfoundation.tools' diff --git a/src/types/kmd-account-manager.ts b/src/types/kmd-account-manager.ts index 020e7c367..104bd9fc9 100644 --- a/src/types/kmd-account-manager.ts +++ b/src/types/kmd-account-manager.ts @@ -1,5 +1,5 @@ +import { Address } from '@algorandfoundation/algokit-common' import * as algosdk from '@algorandfoundation/sdk' -import { Address } from '@algorandfoundation/sdk' import { Config } from '../config' import { SigningAccount } from './account' import { AlgoAmount } from './amount' diff --git a/src/types/testing.ts b/src/types/testing.ts index 7faeec3d1..7ff8ddd58 100644 --- a/src/types/testing.ts +++ b/src/types/testing.ts @@ -1,8 +1,9 @@ import { AlgodClient } from '@algorandfoundation/algokit-algod-client' +import { Address } from '@algorandfoundation/algokit-common' import { AddressWithSigner, Transaction } from '@algorandfoundation/algokit-transact' import type { Account } from '@algorandfoundation/sdk' import * as algosdk from '@algorandfoundation/sdk' -import { Address, Indexer, Kmd, LogicSigAccount } from '@algorandfoundation/sdk' +import { Indexer, Kmd, LogicSigAccount } from '@algorandfoundation/sdk' import { TransactionLogger } from '../testing' import { TestLogger } from '../testing/test-logger' import { AlgoAmount } from '../types/amount' diff --git a/tests/example-contracts/testing-app/contract.ts b/tests/example-contracts/testing-app/contract.ts index 1f24a85be..2ef90a1f1 100644 --- a/tests/example-contracts/testing-app/contract.ts +++ b/tests/example-contracts/testing-app/contract.ts @@ -1,5 +1,5 @@ +import { Address } from '@algorandfoundation/algokit-common' import * as algosdk from '@algorandfoundation/sdk' -import { Address } from '@algorandfoundation/sdk' import { readFile } from 'fs/promises' import path from 'path' import { APP_DEPLOY_NOTE_DAPP, AppDeployMetadata, OnSchemaBreak, OnUpdate } from '../../../src/types/app' From e6c5e445bcc8c3b6db44b8caec0e6d6763ce3615 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Fri, 28 Nov 2025 14:19:48 +1000 Subject: [PATCH 35/43] delete more --- packages/sdk/src/appAccess.ts | 83 ----------------------------------- 1 file changed, 83 deletions(-) delete mode 100644 packages/sdk/src/appAccess.ts diff --git a/packages/sdk/src/appAccess.ts b/packages/sdk/src/appAccess.ts deleted file mode 100644 index 3be059155..000000000 --- a/packages/sdk/src/appAccess.ts +++ /dev/null @@ -1,83 +0,0 @@ -import { AccessReference, BoxReference, HoldingReference, LocalsReference } from '@algorandfoundation/algokit-transact' -import { Address } from '@algorandfoundation/algokit-common' - -/** - * foreignArraysToResourceReferences makes a single array of ResourceReferences from various foreign resource arrays. - * Note, runtime representation of ResourceReference uses addresses, app and asset identifiers, not indexes. - * - * @param accounts - optional array of accounts - * @param foreignAssets - optional array of foreign assets - * @param foreignApps - optional array of foreign apps - * @param holdings - optional array of holdings - * @param locals - optional array of locals - * @param boxes - optional array of boxes - */ -export function foreignArraysToResourceReferences({ - appIndex, - accounts, - foreignAssets, - foreignApps, - holdings, - locals, - boxes, -}: { - appIndex: bigint | number - accounts?: ReadonlyArray
- foreignAssets?: ReadonlyArray - foreignApps?: ReadonlyArray - holdings?: ReadonlyArray - locals?: ReadonlyArray - boxes?: ReadonlyArray -}): Array { - const accessList: Array = [] - function ensureAddress(addr: Address) { - if (!addr || addr.equals(Address.zeroAddress())) { - return - } - if (!accessList.find((rr) => rr.address === addr)) { - accessList.push({ address: addr }) - } - } - function ensureAsset(asset: number | bigint) { - if (!accessList.find((rr) => rr.assetId === BigInt(asset))) { - accessList.push({ assetId: BigInt(asset) }) - } - } - function ensureApp(app: number | bigint) { - if (!accessList.find((rr) => rr.appId === app)) { - accessList.push({ appId: BigInt(app) }) - } - } - for (const acct of accounts ?? []) { - ensureAddress(acct) - } - for (const asset of foreignAssets ?? []) { - ensureAsset(asset) - } - for (const app of foreignApps ?? []) { - ensureApp(app) - } - for (const holding of holdings ?? []) { - if (holding.address) { - ensureAddress(holding.address) - } - ensureAsset(holding.assetId) - accessList.push(holding) - } - for (const local of locals ?? []) { - if (local.address) { - ensureAddress(local.address) - } - if (local.appId && BigInt(local.appId) !== appIndex) { - ensureApp(local.appId) - } - accessList.push({ locals: local }) - } - for (const box of boxes ?? []) { - if (box.appId && BigInt(box.appId) !== appIndex) { - ensureApp(box.appId) - } - accessList.push({ box }) - } - return accessList -} From cf251435f585a651d83d44288b6a57abaf3dac69 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 1 Dec 2025 09:37:20 +1000 Subject: [PATCH 36/43] wip - feedback --- packages/abi/src/abi-method.ts | 10 +++------- src/types/app-manager.ts | 3 +-- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 270c8bf16..68b658a2d 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -29,7 +29,7 @@ export type ABIMethodArg = { } export type ABIMethodReturn = { - type: ABIType | 'void' + type: ABIMethodReturnType description?: string } @@ -57,15 +57,11 @@ export type ABIReturn = method: ABIMethod /** The raw return value as bytes. * - * This value will be empty if the method does not return a value (return type "void") + * This is the value from the last app call log with the first 4 bytes (the ABI return prefix) omitted. */ rawReturnValue: Uint8Array - /** The parsed ABI return value. - * - * This value will be undefined if decoding failed or the method does not return a value (return type "void") - */ + /** The parsed ABI return value. */ returnValue: ABIValue - /** Any error that occurred during decoding, or undefined if decoding was successful */ decodeError: undefined } | { rawReturnValue?: undefined; returnValue?: undefined; method: ABIMethod; decodeError: Error } diff --git a/src/types/app-manager.ts b/src/types/app-manager.ts index 36d147cb8..4fd539244 100644 --- a/src/types/app-manager.ts +++ b/src/types/app-manager.ts @@ -2,7 +2,6 @@ import { ABIMethod, ABIReturn, ABIType, ABIValue } from '@algorandfoundation/alg import { AlgodClient, EvalDelta, PendingTransactionResponse, TealValue } from '@algorandfoundation/algokit-algod-client' import { Address, ReadableAddress, getAddress, getApplicationAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner, BoxReference as TransactionBoxReference } from '@algorandfoundation/algokit-transact' -import * as algosdk from '@algorandfoundation/sdk' import { ProgramSourceMap } from '@algorandfoundation/sdk' import { ABI_RETURN_PREFIX, @@ -429,7 +428,7 @@ export class AppManager { * ``` */ public static getABIReturn(confirmation: PendingTransactionResponse, method: ABIMethod | undefined): ABIReturn | undefined { - if (!method || !confirmation || method.returns.type === 'void') { + if (!method || method.returns.type === 'void') { return undefined } From e2984ee06b1562537586754f431372ce4d05179e Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 1 Dec 2025 09:49:08 +1000 Subject: [PATCH 37/43] feedback --- packages/abi/src/abi-method.ts | 13 ++++++------- src/types/app-spec.ts | 12 ++++++------ 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/packages/abi/src/abi-method.ts b/packages/abi/src/abi-method.ts index 68b658a2d..f915b7258 100644 --- a/packages/abi/src/abi-method.ts +++ b/packages/abi/src/abi-method.ts @@ -157,13 +157,12 @@ export class ABIMethod { } const name = signature.slice(0, argsStart) - const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)) // hmmm the error is bad - .map((n: string) => { - if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) { - return { type: n as ABIMethodArgType } satisfies ABIMethodArg - } - return { type: ABIType.from(n) } satisfies ABIMethodArg - }) + const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)).map((n: string) => { + if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) { + return { type: n as ABIMethodArgType } satisfies ABIMethodArg + } + return { type: ABIType.from(n) } satisfies ABIMethodArg + }) const returnType = signature.slice(argsEnd + 1) const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index fc7b7ad3a..058ddc2b5 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -164,7 +164,7 @@ export interface AppSpec { /** The TEAL source */ source: AppSources /** The ABI-0004 contract definition see https://github.com/algorandfoundation/ARCs/blob/main/ARCs/arc-0004.md */ - contract: ABIContractParams + contract: ContractDefinition /** The values that make up the local and global state */ schema: SchemaSpec /** The rolled-up schema allocation values for local and global state */ @@ -173,19 +173,19 @@ export interface AppSpec { bare_call_config: CallConfig } -interface ABIContractParams { +interface ContractDefinition { name: string desc?: string - networks?: ABIContractNetworks + networks?: ContractNetworks methods: ABIMethodParams[] events?: ARC28Event[] } -interface ABIContractNetworks { - [network: string]: ABIContractNetworkInfo +interface ContractNetworks { + [network: string]: ContractNetworkInfo } -interface ABIContractNetworkInfo { +interface ContractNetworkInfo { appID: number } interface ABIMethodParams { From 379269e76bb97663c0331cab133c102a0d7b8e35 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 1 Dec 2025 09:50:06 +1000 Subject: [PATCH 38/43] doc gen --- .../classes/types_account.MultisigAccount.md | 20 +++--- .../classes/types_account.SigningAccount.md | 16 ++--- .../types_algorand_client.AlgorandClient.md | 72 +++++++++---------- .../classes/types_app_manager.AppManager.md | 42 +++++------ docs/code/enums/types_app.OnSchemaBreak.md | 6 +- docs/code/enums/types_app.OnUpdate.md | 8 +-- .../interfaces/types_app.AppCallParams.md | 12 ++-- ...ypes_app.AppCallTransactionResultOfType.md | 2 +- .../types_app.AppCompilationResult.md | 4 +- .../interfaces/types_app.AppDeployMetadata.md | 8 +-- docs/code/interfaces/types_app.AppLookup.md | 4 +- docs/code/interfaces/types_app.AppMetadata.md | 20 +++--- .../code/interfaces/types_app.AppReference.md | 4 +- .../interfaces/types_app.AppStorageSchema.md | 10 +-- docs/code/interfaces/types_app.BoxName.md | 6 +- .../types_app.BoxValueRequestParams.md | 6 +- .../types_app.BoxValuesRequestParams.md | 6 +- .../code/interfaces/types_app.CompiledTeal.md | 10 +-- .../interfaces/types_app.CoreAppCallArgs.md | 12 ++-- .../interfaces/types_app.RawAppCallArgs.md | 16 ++--- .../types_app_client.AppClientCallABIArgs.md | 14 ++-- ...s_app_client.AppClientCompilationResult.md | 4 +- .../types_app_deployer.AppMetadata.md | 8 +-- .../types_app_manager.AppInformation.md | 22 +++--- .../types_app_manager.BoxReference.md | 4 +- ...types_app_manager.BoxValueRequestParams.md | 6 +- ...ypes_app_manager.BoxValuesRequestParams.md | 6 +- .../code/interfaces/types_app_spec.AppSpec.md | 2 +- .../types_testing.AlgoKitLogCaptureFixture.md | 6 +- .../types_testing.AlgorandFixture.md | 8 +-- .../types_testing.AlgorandFixtureConfig.md | 10 +-- ...s_testing.AlgorandTestAutomationContext.md | 18 ++--- .../types_testing.GetTestAccountParams.md | 6 +- .../types_testing.LogSnapshotConfig.md | 8 +-- docs/code/modules/index.indexer.md | 10 +-- docs/code/modules/testing.md | 4 +- docs/code/modules/types_account.md | 8 +-- docs/code/modules/types_app.md | 26 +++---- docs/code/modules/types_app_manager.md | 2 +- 39 files changed, 228 insertions(+), 228 deletions(-) diff --git a/docs/code/classes/types_account.MultisigAccount.md b/docs/code/classes/types_account.MultisigAccount.md index ea2d768b6..c261ae90e 100644 --- a/docs/code/classes/types_account.MultisigAccount.md +++ b/docs/code/classes/types_account.MultisigAccount.md @@ -49,7 +49,7 @@ Account wrapper that supports partial or full multisig signing. #### Defined in -[src/types/account.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L48) +[src/types/account.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L49) ## Properties @@ -59,7 +59,7 @@ Account wrapper that supports partial or full multisig signing. #### Defined in -[src/types/account.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L25) +[src/types/account.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L26) ___ @@ -69,7 +69,7 @@ ___ #### Defined in -[src/types/account.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L23) +[src/types/account.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L24) ___ @@ -79,7 +79,7 @@ ___ #### Defined in -[src/types/account.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L26) +[src/types/account.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L27) ___ @@ -89,7 +89,7 @@ ___ #### Defined in -[src/types/account.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L24) +[src/types/account.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L25) ## Accessors @@ -105,7 +105,7 @@ The address of the multisig account #### Defined in -[src/types/account.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L39) +[src/types/account.ts:40](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L40) ___ @@ -121,7 +121,7 @@ The parameters for the multisig account #### Defined in -[src/types/account.ts:29](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L29) +[src/types/account.ts:30](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L30) ___ @@ -137,7 +137,7 @@ The transaction signer for the multisig account #### Defined in -[src/types/account.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L44) +[src/types/account.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L45) ___ @@ -153,7 +153,7 @@ readonly (`default` \| [`SigningAccount`](types_account.SigningAccount.md))[] #### Defined in -[src/types/account.ts:34](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L34) +[src/types/account.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L35) ## Methods @@ -183,4 +183,4 @@ const signedTxn = multisigAccount.sign(myTransaction) #### Defined in -[src/types/account.ts:67](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L67) +[src/types/account.ts:68](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L68) diff --git a/docs/code/classes/types_account.SigningAccount.md b/docs/code/classes/types_account.SigningAccount.md index ca9b0473b..8e7699010 100644 --- a/docs/code/classes/types_account.SigningAccount.md +++ b/docs/code/classes/types_account.SigningAccount.md @@ -48,7 +48,7 @@ Account wrapper that supports a rekeyed account #### Defined in -[src/types/account.ts:117](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L117) +[src/types/account.ts:118](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L118) ## Properties @@ -58,7 +58,7 @@ Account wrapper that supports a rekeyed account #### Defined in -[src/types/account.ts:82](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L82) +[src/types/account.ts:83](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L83) ___ @@ -68,7 +68,7 @@ ___ #### Defined in -[src/types/account.ts:84](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L84) +[src/types/account.ts:85](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L85) ___ @@ -78,7 +78,7 @@ ___ #### Defined in -[src/types/account.ts:83](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L83) +[src/types/account.ts:84](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L84) ## Accessors @@ -98,7 +98,7 @@ Account.addr #### Defined in -[src/types/account.ts:89](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L89) +[src/types/account.ts:90](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L90) ___ @@ -114,7 +114,7 @@ Algorand account of the sender address and signer private key #### Defined in -[src/types/account.ts:110](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L110) +[src/types/account.ts:111](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L111) ___ @@ -130,7 +130,7 @@ Transaction signer for the underlying signing account #### Defined in -[src/types/account.ts:103](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L103) +[src/types/account.ts:104](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L104) ___ @@ -150,4 +150,4 @@ Account.sk #### Defined in -[src/types/account.ts:96](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L96) +[src/types/account.ts:97](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L97) diff --git a/docs/code/classes/types_algorand_client.AlgorandClient.md b/docs/code/classes/types_algorand_client.AlgorandClient.md index 3703d8ee7..b771e24bd 100644 --- a/docs/code/classes/types_algorand_client.AlgorandClient.md +++ b/docs/code/classes/types_algorand_client.AlgorandClient.md @@ -74,7 +74,7 @@ A client that brokers easy access to Algorand functionality. #### Defined in -[src/types/algorand-client.ts:43](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L43) +[src/types/algorand-client.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L44) ## Properties @@ -84,7 +84,7 @@ A client that brokers easy access to Algorand functionality. #### Defined in -[src/types/algorand-client.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L23) +[src/types/algorand-client.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L24) ___ @@ -94,7 +94,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L25) +[src/types/algorand-client.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L26) ___ @@ -104,7 +104,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L24) +[src/types/algorand-client.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L25) ___ @@ -114,7 +114,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L26) +[src/types/algorand-client.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L27) ___ @@ -137,7 +137,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:30](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L30) +[src/types/algorand-client.ts:31](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L31) ___ @@ -147,7 +147,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:31](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L31) +[src/types/algorand-client.ts:32](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L32) ___ @@ -157,7 +157,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:32](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L32) +[src/types/algorand-client.ts:33](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L33) ___ @@ -167,7 +167,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:22](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L22) +[src/types/algorand-client.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L23) ___ @@ -177,7 +177,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:34](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L34) +[src/types/algorand-client.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L35) ___ @@ -191,7 +191,7 @@ error transformers from the set. #### Defined in -[src/types/algorand-client.ts:41](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L41) +[src/types/algorand-client.ts:42](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L42) ___ @@ -201,7 +201,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:28](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L28) +[src/types/algorand-client.ts:29](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L29) ___ @@ -211,7 +211,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L27) +[src/types/algorand-client.ts:28](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L28) ## Accessors @@ -235,7 +235,7 @@ const accountManager = AlgorandClient.mainNet().account; #### Defined in -[src/types/algorand-client.ts:185](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L185) +[src/types/algorand-client.ts:186](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L186) ___ @@ -259,7 +259,7 @@ const appManager = AlgorandClient.mainNet().app; #### Defined in -[src/types/algorand-client.ts:205](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L205) +[src/types/algorand-client.ts:206](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L206) ___ @@ -283,7 +283,7 @@ const deployer = AlgorandClient.mainNet().appDeployer; #### Defined in -[src/types/algorand-client.ts:215](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L215) +[src/types/algorand-client.ts:216](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L216) ___ @@ -307,7 +307,7 @@ const assetManager = AlgorandClient.mainNet().asset; #### Defined in -[src/types/algorand-client.ts:195](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L195) +[src/types/algorand-client.ts:196](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L196) ___ @@ -331,7 +331,7 @@ const clientManager = AlgorandClient.mainNet().client; #### Defined in -[src/types/algorand-client.ts:175](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L175) +[src/types/algorand-client.ts:176](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L176) ___ @@ -359,7 +359,7 @@ const payment = await AlgorandClient.mainNet().createTransaction.payment({ #### Defined in -[src/types/algorand-client.ts:273](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L273) +[src/types/algorand-client.ts:274](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L274) ___ @@ -387,7 +387,7 @@ const result = await AlgorandClient.mainNet().send.payment({ #### Defined in -[src/types/algorand-client.ts:259](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L259) +[src/types/algorand-client.ts:260](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L260) ## Methods @@ -411,7 +411,7 @@ const params = await AlgorandClient.mainNet().getSuggestedParams(); #### Defined in -[src/types/algorand-client.ts:154](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L154) +[src/types/algorand-client.ts:155](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L155) ___ @@ -442,7 +442,7 @@ const result = await composer.addTransaction(payment).send() #### Defined in -[src/types/algorand-client.ts:237](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L237) +[src/types/algorand-client.ts:238](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L238) ___ @@ -465,7 +465,7 @@ composed transaction groups made from `newGroup` #### Defined in -[src/types/algorand-client.ts:223](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L223) +[src/types/algorand-client.ts:224](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L224) ___ @@ -496,7 +496,7 @@ const algorand = AlgorandClient.mainNet().setDefaultSigner(signer) #### Defined in -[src/types/algorand-client.ts:77](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L77) +[src/types/algorand-client.ts:78](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L78) ___ @@ -526,7 +526,7 @@ const algorand = AlgorandClient.mainNet().setDefaultValidityWindow(1000); #### Defined in -[src/types/algorand-client.ts:62](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L62) +[src/types/algorand-client.ts:63](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L63) ___ @@ -558,7 +558,7 @@ const algorand = AlgorandClient.mainNet().setSigner(signer.addr, signer.signer) #### Defined in -[src/types/algorand-client.ts:113](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L113) +[src/types/algorand-client.ts:114](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L114) ___ @@ -593,7 +593,7 @@ const accountManager = AlgorandClient.mainNet() #### Defined in -[src/types/algorand-client.ts:97](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L97) +[src/types/algorand-client.ts:98](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L98) ___ @@ -632,7 +632,7 @@ const algorand = AlgorandClient.mainNet().setSuggestedParamsCache(suggestedParam #### Defined in -[src/types/algorand-client.ts:128](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L128) +[src/types/algorand-client.ts:129](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L129) ___ @@ -662,7 +662,7 @@ const algorand = AlgorandClient.mainNet().setSuggestedParamsCacheTimeout(10_000) #### Defined in -[src/types/algorand-client.ts:143](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L143) +[src/types/algorand-client.ts:144](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L144) ___ @@ -682,7 +682,7 @@ ___ #### Defined in -[src/types/algorand-client.ts:227](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L227) +[src/types/algorand-client.ts:228](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L228) ___ @@ -706,7 +706,7 @@ const algorand = AlgorandClient.defaultLocalNet(); #### Defined in -[src/types/algorand-client.ts:285](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L285) +[src/types/algorand-client.ts:286](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L286) ___ @@ -736,7 +736,7 @@ const algorand = AlgorandClient.fromClients({ algod, indexer, kmd }); #### Defined in -[src/types/algorand-client.ts:328](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L328) +[src/types/algorand-client.ts:329](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L329) ___ @@ -766,7 +766,7 @@ const client = AlgorandClient.fromConfig({ algodConfig, indexerConfig, kmdConfig #### Defined in -[src/types/algorand-client.ts:362](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L362) +[src/types/algorand-client.ts:363](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L363) ___ @@ -803,7 +803,7 @@ const client = AlgorandClient.fromEnvironment(); #### Defined in -[src/types/algorand-client.ts:351](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L351) +[src/types/algorand-client.ts:352](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L352) ___ @@ -827,7 +827,7 @@ const algorand = AlgorandClient.mainNet(); #### Defined in -[src/types/algorand-client.ts:313](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L313) +[src/types/algorand-client.ts:314](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L314) ___ @@ -851,4 +851,4 @@ const algorand = AlgorandClient.testNet(); #### Defined in -[src/types/algorand-client.ts:299](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L299) +[src/types/algorand-client.ts:300](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/algorand-client.ts#L300) diff --git a/docs/code/classes/types_app_manager.AppManager.md b/docs/code/classes/types_app_manager.AppManager.md index 74e62dd76..837faf43a 100644 --- a/docs/code/classes/types_app_manager.AppManager.md +++ b/docs/code/classes/types_app_manager.AppManager.md @@ -58,7 +58,7 @@ Creates an `AppManager` #### Defined in -[src/types/app-manager.ts:108](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L108) +[src/types/app-manager.ts:107](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L107) ## Properties @@ -68,7 +68,7 @@ Creates an `AppManager` #### Defined in -[src/types/app-manager.ts:101](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L101) +[src/types/app-manager.ts:100](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L100) ___ @@ -78,7 +78,7 @@ ___ #### Defined in -[src/types/app-manager.ts:102](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L102) +[src/types/app-manager.ts:101](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L101) ## Methods @@ -113,7 +113,7 @@ const compiled = await appManager.compileTeal(tealProgram) #### Defined in -[src/types/app-manager.ts:127](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L127) +[src/types/app-manager.ts:126](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L126) ___ @@ -153,7 +153,7 @@ const compiled = await appManager.compileTealTemplate(tealTemplate, { TMPL_APP_I #### Defined in -[src/types/app-manager.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L163) +[src/types/app-manager.ts:162](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L162) ___ @@ -183,7 +183,7 @@ const boxNames = await appManager.getBoxNames(12353n); #### Defined in -[src/types/app-manager.ts:280](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L280) +[src/types/app-manager.ts:279](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L279) ___ @@ -214,7 +214,7 @@ const boxValue = await appManager.getBoxValue(12353n, 'boxName'); #### Defined in -[src/types/app-manager.ts:301](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L301) +[src/types/app-manager.ts:300](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L300) ___ @@ -244,7 +244,7 @@ const boxValue = await appManager.getBoxValueFromABIType({ appId: 12353n, boxNam #### Defined in -[src/types/app-manager.ts:331](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L331) +[src/types/app-manager.ts:330](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L330) ___ @@ -275,7 +275,7 @@ const boxValues = await appManager.getBoxValues(12353n, ['boxName1', 'boxName2'] #### Defined in -[src/types/app-manager.ts:318](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L318) +[src/types/app-manager.ts:317](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L317) ___ @@ -305,7 +305,7 @@ const boxValues = await appManager.getBoxValuesFromABIType({ appId: 12353n, boxN #### Defined in -[src/types/app-manager.ts:346](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L346) +[src/types/app-manager.ts:345](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L345) ___ @@ -335,7 +335,7 @@ const appInfo = await appManager.getById(12353n); #### Defined in -[src/types/app-manager.ts:204](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L204) +[src/types/app-manager.ts:203](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L203) ___ @@ -366,7 +366,7 @@ const compiled = appManager.getCompilationResult(tealProgram) #### Defined in -[src/types/app-manager.ts:189](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L189) +[src/types/app-manager.ts:188](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L188) ___ @@ -396,7 +396,7 @@ const globalState = await appManager.getGlobalState(12353n); #### Defined in -[src/types/app-manager.ts:236](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L236) +[src/types/app-manager.ts:235](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L235) ___ @@ -427,7 +427,7 @@ const localState = await appManager.getLocalState(12353n, 'ACCOUNTADDRESS'); #### Defined in -[src/types/app-manager.ts:251](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L251) +[src/types/app-manager.ts:250](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L250) ___ @@ -458,7 +458,7 @@ const stateValues = AppManager.decodeAppState(state); #### Defined in -[src/types/app-manager.ts:378](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L378) +[src/types/app-manager.ts:377](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L377) ___ @@ -489,7 +489,7 @@ const returnValue = AppManager.getABIReturn(confirmation, ABIMethod.fromSignatur #### Defined in -[src/types/app-manager.ts:431](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L431) +[src/types/app-manager.ts:430](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L430) ___ @@ -519,7 +519,7 @@ const boxRef = AppManager.getBoxReference('boxName'); #### Defined in -[src/types/app-manager.ts:360](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L360) +[src/types/app-manager.ts:359](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L359) ___ @@ -539,7 +539,7 @@ ___ #### Defined in -[src/types/app-manager.ts:463](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L463) +[src/types/app-manager.ts:462](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L462) ___ @@ -578,7 +578,7 @@ const tealCode = AppManager.replaceTealTemplateDeployTimeControlParams(tealTempl #### Defined in -[src/types/app-manager.ts:492](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L492) +[src/types/app-manager.ts:491](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L491) ___ @@ -611,7 +611,7 @@ const tealCode = AppManager.replaceTealTemplateParams(tealTemplate, { TMPL_APP_I #### Defined in -[src/types/app-manager.ts:527](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L527) +[src/types/app-manager.ts:526](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L526) ___ @@ -641,4 +641,4 @@ const stripped = AppManager.stripTealComments(tealProgram); #### Defined in -[src/types/app-manager.ts:566](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L566) +[src/types/app-manager.ts:565](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L565) diff --git a/docs/code/enums/types_app.OnSchemaBreak.md b/docs/code/enums/types_app.OnSchemaBreak.md index cb1ea37e6..f2991549d 100644 --- a/docs/code/enums/types_app.OnSchemaBreak.md +++ b/docs/code/enums/types_app.OnSchemaBreak.md @@ -24,7 +24,7 @@ Create a new app #### Defined in -[src/types/app.ts:211](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L211) +[src/types/app.ts:212](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L212) ___ @@ -36,7 +36,7 @@ Fail the deployment #### Defined in -[src/types/app.ts:207](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L207) +[src/types/app.ts:208](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L208) ___ @@ -48,4 +48,4 @@ Delete the app and create a new one in its place #### Defined in -[src/types/app.ts:209](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L209) +[src/types/app.ts:210](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L210) diff --git a/docs/code/enums/types_app.OnUpdate.md b/docs/code/enums/types_app.OnUpdate.md index c1d677d95..c666025f3 100644 --- a/docs/code/enums/types_app.OnUpdate.md +++ b/docs/code/enums/types_app.OnUpdate.md @@ -25,7 +25,7 @@ Create a new app #### Defined in -[src/types/app.ts:201](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L201) +[src/types/app.ts:202](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L202) ___ @@ -37,7 +37,7 @@ Fail the deployment #### Defined in -[src/types/app.ts:195](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L195) +[src/types/app.ts:196](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L196) ___ @@ -49,7 +49,7 @@ Delete the app and create a new one in its place #### Defined in -[src/types/app.ts:199](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L199) +[src/types/app.ts:200](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L200) ___ @@ -61,4 +61,4 @@ Update the app #### Defined in -[src/types/app.ts:197](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L197) +[src/types/app.ts:198](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L198) diff --git a/docs/code/interfaces/types_app.AppCallParams.md b/docs/code/interfaces/types_app.AppCallParams.md index c89586f26..9a829f262 100644 --- a/docs/code/interfaces/types_app.AppCallParams.md +++ b/docs/code/interfaces/types_app.AppCallParams.md @@ -41,7 +41,7 @@ The id of the app to call #### Defined in -[src/types/app.ts:100](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L100) +[src/types/app.ts:101](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L101) ___ @@ -53,7 +53,7 @@ The arguments passed in to the app call #### Defined in -[src/types/app.ts:110](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L110) +[src/types/app.ts:111](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L111) ___ @@ -65,7 +65,7 @@ The type of call, everything except create (see `createApp`) and update (see `up #### Defined in -[src/types/app.ts:102](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L102) +[src/types/app.ts:103](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L103) ___ @@ -93,7 +93,7 @@ The account to make the call from #### Defined in -[src/types/app.ts:104](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L104) +[src/types/app.ts:105](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L105) ___ @@ -137,7 +137,7 @@ The (optional) transaction note #### Defined in -[src/types/app.ts:108](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L108) +[src/types/app.ts:109](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L109) ___ @@ -243,4 +243,4 @@ Optional transaction parameters #### Defined in -[src/types/app.ts:106](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L106) +[src/types/app.ts:107](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L107) diff --git a/docs/code/interfaces/types_app.AppCallTransactionResultOfType.md b/docs/code/interfaces/types_app.AppCallTransactionResultOfType.md index b0f17f90d..3e875de67 100644 --- a/docs/code/interfaces/types_app.AppCallTransactionResultOfType.md +++ b/docs/code/interfaces/types_app.AppCallTransactionResultOfType.md @@ -73,7 +73,7 @@ If an ABI method was called the processed return value #### Defined in -[src/types/app.ts:143](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L143) +[src/types/app.ts:144](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L144) ___ diff --git a/docs/code/interfaces/types_app.AppCompilationResult.md b/docs/code/interfaces/types_app.AppCompilationResult.md index aed8c2eac..5aeb96551 100644 --- a/docs/code/interfaces/types_app.AppCompilationResult.md +++ b/docs/code/interfaces/types_app.AppCompilationResult.md @@ -23,7 +23,7 @@ The result of compiling the approval program #### Defined in -[src/types/app.ts:217](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L217) +[src/types/app.ts:218](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L218) ___ @@ -35,4 +35,4 @@ The result of compiling the clear state program #### Defined in -[src/types/app.ts:219](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L219) +[src/types/app.ts:220](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L220) diff --git a/docs/code/interfaces/types_app.AppDeployMetadata.md b/docs/code/interfaces/types_app.AppDeployMetadata.md index 04299ebd7..27b89befa 100644 --- a/docs/code/interfaces/types_app.AppDeployMetadata.md +++ b/docs/code/interfaces/types_app.AppDeployMetadata.md @@ -33,7 +33,7 @@ Whether or not the app is deletable / permanent / unspecified #### Defined in -[src/types/app.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L158) +[src/types/app.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L159) ___ @@ -45,7 +45,7 @@ The unique name identifier of the app within the creator account #### Defined in -[src/types/app.ts:154](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L154) +[src/types/app.ts:155](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L155) ___ @@ -57,7 +57,7 @@ Whether or not the app is updatable / immutable / unspecified #### Defined in -[src/types/app.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L160) +[src/types/app.ts:161](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L161) ___ @@ -69,4 +69,4 @@ The version of app that is / will be deployed #### Defined in -[src/types/app.ts:156](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L156) +[src/types/app.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L157) diff --git a/docs/code/interfaces/types_app.AppLookup.md b/docs/code/interfaces/types_app.AppLookup.md index e4c0b466b..6fbbf96ba 100644 --- a/docs/code/interfaces/types_app.AppLookup.md +++ b/docs/code/interfaces/types_app.AppLookup.md @@ -21,7 +21,7 @@ A lookup of name -> Algorand app for a creator #### Defined in -[src/types/app.ts:178](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L178) +[src/types/app.ts:179](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L179) ___ @@ -31,4 +31,4 @@ ___ #### Defined in -[src/types/app.ts:177](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L177) +[src/types/app.ts:178](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L178) diff --git a/docs/code/interfaces/types_app.AppMetadata.md b/docs/code/interfaces/types_app.AppMetadata.md index 9606288cd..fd23bbe0b 100644 --- a/docs/code/interfaces/types_app.AppMetadata.md +++ b/docs/code/interfaces/types_app.AppMetadata.md @@ -43,7 +43,7 @@ The Algorand address of the account associated with the app #### Defined in -[src/types/app.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L39) +[src/types/app.ts:40](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L40) ___ @@ -59,7 +59,7 @@ The id of the app #### Defined in -[src/types/app.ts:37](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L37) +[src/types/app.ts:38](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L38) ___ @@ -71,7 +71,7 @@ The metadata when the app was created #### Defined in -[src/types/app.ts:170](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L170) +[src/types/app.ts:171](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L171) ___ @@ -83,7 +83,7 @@ The round the app was created #### Defined in -[src/types/app.ts:166](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L166) +[src/types/app.ts:167](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L167) ___ @@ -99,7 +99,7 @@ Whether or not the app is deletable / permanent / unspecified #### Defined in -[src/types/app.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L158) +[src/types/app.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L159) ___ @@ -111,7 +111,7 @@ Whether or not the app is deleted #### Defined in -[src/types/app.ts:172](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L172) +[src/types/app.ts:173](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L173) ___ @@ -127,7 +127,7 @@ The unique name identifier of the app within the creator account #### Defined in -[src/types/app.ts:154](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L154) +[src/types/app.ts:155](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L155) ___ @@ -143,7 +143,7 @@ Whether or not the app is updatable / immutable / unspecified #### Defined in -[src/types/app.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L160) +[src/types/app.ts:161](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L161) ___ @@ -155,7 +155,7 @@ The last round that the app was updated #### Defined in -[src/types/app.ts:168](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L168) +[src/types/app.ts:169](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L169) ___ @@ -171,4 +171,4 @@ The version of app that is / will be deployed #### Defined in -[src/types/app.ts:156](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L156) +[src/types/app.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L157) diff --git a/docs/code/interfaces/types_app.AppReference.md b/docs/code/interfaces/types_app.AppReference.md index 7f0c04e49..ecfb71a0a 100644 --- a/docs/code/interfaces/types_app.AppReference.md +++ b/docs/code/interfaces/types_app.AppReference.md @@ -29,7 +29,7 @@ The Algorand address of the account associated with the app #### Defined in -[src/types/app.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L39) +[src/types/app.ts:40](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L40) ___ @@ -41,4 +41,4 @@ The id of the app #### Defined in -[src/types/app.ts:37](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L37) +[src/types/app.ts:38](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L38) diff --git a/docs/code/interfaces/types_app.AppStorageSchema.md b/docs/code/interfaces/types_app.AppStorageSchema.md index 7991d8a27..61e63cb18 100644 --- a/docs/code/interfaces/types_app.AppStorageSchema.md +++ b/docs/code/interfaces/types_app.AppStorageSchema.md @@ -26,7 +26,7 @@ Any extra pages that are needed for the smart contract; if left blank then the r #### Defined in -[src/types/app.ts:124](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L124) +[src/types/app.ts:125](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L125) ___ @@ -38,7 +38,7 @@ Restricts number of byte slices in global state #### Defined in -[src/types/app.ts:122](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L122) +[src/types/app.ts:123](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L123) ___ @@ -50,7 +50,7 @@ Restricts number of ints in global state #### Defined in -[src/types/app.ts:120](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L120) +[src/types/app.ts:121](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L121) ___ @@ -62,7 +62,7 @@ Restricts number of byte slices in per-user local state #### Defined in -[src/types/app.ts:118](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L118) +[src/types/app.ts:119](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L119) ___ @@ -74,4 +74,4 @@ Restricts number of ints in per-user local state #### Defined in -[src/types/app.ts:116](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L116) +[src/types/app.ts:117](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L117) diff --git a/docs/code/interfaces/types_app.BoxName.md b/docs/code/interfaces/types_app.BoxName.md index 2fa13c856..3293ec7c4 100644 --- a/docs/code/interfaces/types_app.BoxName.md +++ b/docs/code/interfaces/types_app.BoxName.md @@ -24,7 +24,7 @@ Name in UTF-8 #### Defined in -[src/types/app.ts:269](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L269) +[src/types/app.ts:270](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L270) ___ @@ -36,7 +36,7 @@ Name in Base64 #### Defined in -[src/types/app.ts:273](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L273) +[src/types/app.ts:274](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L274) ___ @@ -48,4 +48,4 @@ Name in binary bytes #### Defined in -[src/types/app.ts:271](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L271) +[src/types/app.ts:272](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L272) diff --git a/docs/code/interfaces/types_app.BoxValueRequestParams.md b/docs/code/interfaces/types_app.BoxValueRequestParams.md index 2bedcf331..c61fd5270 100644 --- a/docs/code/interfaces/types_app.BoxValueRequestParams.md +++ b/docs/code/interfaces/types_app.BoxValueRequestParams.md @@ -27,7 +27,7 @@ The ID of the app return box names for #### Defined in -[src/types/app.ts:282](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L282) +[src/types/app.ts:283](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L283) ___ @@ -39,7 +39,7 @@ The name of the box to return either as a string, binary array or `BoxName` #### Defined in -[src/types/app.ts:284](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L284) +[src/types/app.ts:285](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L285) ___ @@ -51,4 +51,4 @@ The ABI type to decode the value using #### Defined in -[src/types/app.ts:286](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L286) +[src/types/app.ts:287](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L287) diff --git a/docs/code/interfaces/types_app.BoxValuesRequestParams.md b/docs/code/interfaces/types_app.BoxValuesRequestParams.md index 1454ddebe..2aa8b7054 100644 --- a/docs/code/interfaces/types_app.BoxValuesRequestParams.md +++ b/docs/code/interfaces/types_app.BoxValuesRequestParams.md @@ -27,7 +27,7 @@ The ID of the app return box names for #### Defined in -[src/types/app.ts:295](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L295) +[src/types/app.ts:296](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L296) ___ @@ -39,7 +39,7 @@ The names of the boxes to return either as a string, binary array or BoxName` #### Defined in -[src/types/app.ts:297](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L297) +[src/types/app.ts:298](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L298) ___ @@ -51,4 +51,4 @@ The ABI type to decode the value using #### Defined in -[src/types/app.ts:299](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L299) +[src/types/app.ts:300](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L300) diff --git a/docs/code/interfaces/types_app.CompiledTeal.md b/docs/code/interfaces/types_app.CompiledTeal.md index 7cafc2066..dd3102604 100644 --- a/docs/code/interfaces/types_app.CompiledTeal.md +++ b/docs/code/interfaces/types_app.CompiledTeal.md @@ -26,7 +26,7 @@ The compiled code #### Defined in -[src/types/app.ts:132](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L132) +[src/types/app.ts:133](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L133) ___ @@ -38,7 +38,7 @@ The base64 encoded code as a byte array #### Defined in -[src/types/app.ts:136](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L136) +[src/types/app.ts:137](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L137) ___ @@ -50,7 +50,7 @@ The hash returned by the compiler #### Defined in -[src/types/app.ts:134](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L134) +[src/types/app.ts:135](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L135) ___ @@ -62,7 +62,7 @@ Source map from the compilation #### Defined in -[src/types/app.ts:138](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L138) +[src/types/app.ts:139](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L139) ___ @@ -74,4 +74,4 @@ Original TEAL code #### Defined in -[src/types/app.ts:130](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L130) +[src/types/app.ts:131](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L131) diff --git a/docs/code/interfaces/types_app.CoreAppCallArgs.md b/docs/code/interfaces/types_app.CoreAppCallArgs.md index 5d099994e..8cd505719 100644 --- a/docs/code/interfaces/types_app.CoreAppCallArgs.md +++ b/docs/code/interfaces/types_app.CoreAppCallArgs.md @@ -33,7 +33,7 @@ The address of any accounts to load in #### Defined in -[src/types/app.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L49) +[src/types/app.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L50) ___ @@ -45,7 +45,7 @@ IDs of any apps to load into the foreignApps array #### Defined in -[src/types/app.ts:51](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L51) +[src/types/app.ts:52](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L52) ___ @@ -57,7 +57,7 @@ IDs of any assets to load into the foreignAssets array #### Defined in -[src/types/app.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L53) +[src/types/app.ts:54](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L54) ___ @@ -69,7 +69,7 @@ Any box references to load #### Defined in -[src/types/app.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L47) +[src/types/app.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L48) ___ @@ -81,7 +81,7 @@ The optional lease for the transaction #### Defined in -[src/types/app.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L45) +[src/types/app.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L46) ___ @@ -95,4 +95,4 @@ Optional account / account address that should be authorised to transact on beha #### Defined in -[src/types/app.ts:58](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L58) +[src/types/app.ts:59](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L59) diff --git a/docs/code/interfaces/types_app.RawAppCallArgs.md b/docs/code/interfaces/types_app.RawAppCallArgs.md index 4244c1fd8..f8eecdc13 100644 --- a/docs/code/interfaces/types_app.RawAppCallArgs.md +++ b/docs/code/interfaces/types_app.RawAppCallArgs.md @@ -39,7 +39,7 @@ The address of any accounts to load in #### Defined in -[src/types/app.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L49) +[src/types/app.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L50) ___ @@ -51,7 +51,7 @@ Any application arguments to pass through #### Defined in -[src/types/app.ts:66](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L66) +[src/types/app.ts:67](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L67) ___ @@ -67,7 +67,7 @@ IDs of any apps to load into the foreignApps array #### Defined in -[src/types/app.ts:51](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L51) +[src/types/app.ts:52](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L52) ___ @@ -83,7 +83,7 @@ IDs of any assets to load into the foreignAssets array #### Defined in -[src/types/app.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L53) +[src/types/app.ts:54](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L54) ___ @@ -99,7 +99,7 @@ Any box references to load #### Defined in -[src/types/app.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L47) +[src/types/app.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L48) ___ @@ -115,7 +115,7 @@ The optional lease for the transaction #### Defined in -[src/types/app.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L45) +[src/types/app.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L46) ___ @@ -127,7 +127,7 @@ Property to aid intellisense #### Defined in -[src/types/app.ts:68](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L68) +[src/types/app.ts:69](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L69) ___ @@ -145,4 +145,4 @@ Optional account / account address that should be authorised to transact on beha #### Defined in -[src/types/app.ts:58](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L58) +[src/types/app.ts:59](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L59) diff --git a/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md b/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md index 12ca3cdfc..449f132c0 100644 --- a/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md +++ b/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md @@ -37,7 +37,7 @@ Omit.accounts #### Defined in -[src/types/app.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L49) +[src/types/app.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L50) ___ @@ -53,7 +53,7 @@ Omit.apps #### Defined in -[src/types/app.ts:51](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L51) +[src/types/app.ts:52](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L52) ___ @@ -69,7 +69,7 @@ Omit.assets #### Defined in -[src/types/app.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L53) +[src/types/app.ts:54](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L54) ___ @@ -85,7 +85,7 @@ Omit.boxes #### Defined in -[src/types/app.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L47) +[src/types/app.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L48) ___ @@ -101,7 +101,7 @@ Omit.lease #### Defined in -[src/types/app.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L45) +[src/types/app.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L46) ___ @@ -129,7 +129,7 @@ Omit.methodArgs #### Defined in -[src/types/app.ts:88](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L88) +[src/types/app.ts:89](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L89) ___ @@ -147,4 +147,4 @@ Omit.rekeyTo #### Defined in -[src/types/app.ts:58](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L58) +[src/types/app.ts:59](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L59) diff --git a/docs/code/interfaces/types_app_client.AppClientCompilationResult.md b/docs/code/interfaces/types_app_client.AppClientCompilationResult.md index ce719fe1f..bcd1ff6fc 100644 --- a/docs/code/interfaces/types_app_client.AppClientCompilationResult.md +++ b/docs/code/interfaces/types_app_client.AppClientCompilationResult.md @@ -61,7 +61,7 @@ Partial.compiledApproval #### Defined in -[src/types/app.ts:217](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L217) +[src/types/app.ts:218](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L218) ___ @@ -77,4 +77,4 @@ Partial.compiledClear #### Defined in -[src/types/app.ts:219](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L219) +[src/types/app.ts:220](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L220) diff --git a/docs/code/interfaces/types_app_deployer.AppMetadata.md b/docs/code/interfaces/types_app_deployer.AppMetadata.md index e8514f991..9e9d97619 100644 --- a/docs/code/interfaces/types_app_deployer.AppMetadata.md +++ b/docs/code/interfaces/types_app_deployer.AppMetadata.md @@ -89,7 +89,7 @@ Whether or not the app is deletable / permanent / unspecified #### Defined in -[src/types/app.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L158) +[src/types/app.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L159) ___ @@ -117,7 +117,7 @@ The unique name identifier of the app within the creator account #### Defined in -[src/types/app.ts:154](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L154) +[src/types/app.ts:155](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L155) ___ @@ -133,7 +133,7 @@ Whether or not the app is updatable / immutable / unspecified #### Defined in -[src/types/app.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L160) +[src/types/app.ts:161](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L161) ___ @@ -161,4 +161,4 @@ The version of app that is / will be deployed #### Defined in -[src/types/app.ts:156](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L156) +[src/types/app.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L157) diff --git a/docs/code/interfaces/types_app_manager.AppInformation.md b/docs/code/interfaces/types_app_manager.AppInformation.md index 764f9d2af..6762d041f 100644 --- a/docs/code/interfaces/types_app_manager.AppInformation.md +++ b/docs/code/interfaces/types_app_manager.AppInformation.md @@ -32,7 +32,7 @@ The escrow address that the app operates with. #### Defined in -[src/types/app-manager.ts:22](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L22) +[src/types/app-manager.ts:21](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L21) ___ @@ -44,7 +44,7 @@ The ID of the app. #### Defined in -[src/types/app-manager.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L20) +[src/types/app-manager.ts:19](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L19) ___ @@ -56,7 +56,7 @@ Approval program. #### Defined in -[src/types/app-manager.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L26) +[src/types/app-manager.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L25) ___ @@ -68,7 +68,7 @@ Clear state program. #### Defined in -[src/types/app-manager.ts:30](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L30) +[src/types/app-manager.ts:29](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L29) ___ @@ -81,7 +81,7 @@ parameters and global state for this application can be found. #### Defined in -[src/types/app-manager.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L35) +[src/types/app-manager.ts:34](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L34) ___ @@ -93,7 +93,7 @@ Any extra pages that are needed for the smart contract. #### Defined in -[src/types/app-manager.ts:49](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L49) +[src/types/app-manager.ts:48](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L48) ___ @@ -105,7 +105,7 @@ The number of allocated byte slices in global state. #### Defined in -[src/types/app-manager.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L47) +[src/types/app-manager.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L46) ___ @@ -117,7 +117,7 @@ The number of allocated ints in global state. #### Defined in -[src/types/app-manager.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L45) +[src/types/app-manager.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L44) ___ @@ -129,7 +129,7 @@ Current global state values. #### Defined in -[src/types/app-manager.ts:39](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L39) +[src/types/app-manager.ts:38](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L38) ___ @@ -141,7 +141,7 @@ The number of allocated byte slices in per-user local state. #### Defined in -[src/types/app-manager.ts:43](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L43) +[src/types/app-manager.ts:42](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L42) ___ @@ -153,4 +153,4 @@ The number of allocated ints in per-user local state. #### Defined in -[src/types/app-manager.ts:41](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L41) +[src/types/app-manager.ts:40](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L40) diff --git a/docs/code/interfaces/types_app_manager.BoxReference.md b/docs/code/interfaces/types_app_manager.BoxReference.md index 38307555f..cfe9094f0 100644 --- a/docs/code/interfaces/types_app_manager.BoxReference.md +++ b/docs/code/interfaces/types_app_manager.BoxReference.md @@ -23,7 +23,7 @@ A unique application id #### Defined in -[src/types/app-manager.ts:68](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L68) +[src/types/app-manager.ts:67](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L67) ___ @@ -35,4 +35,4 @@ Identifier for a box name #### Defined in -[src/types/app-manager.ts:72](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L72) +[src/types/app-manager.ts:71](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L71) diff --git a/docs/code/interfaces/types_app_manager.BoxValueRequestParams.md b/docs/code/interfaces/types_app_manager.BoxValueRequestParams.md index d0bf301ce..ef9b8ad9c 100644 --- a/docs/code/interfaces/types_app_manager.BoxValueRequestParams.md +++ b/docs/code/interfaces/types_app_manager.BoxValueRequestParams.md @@ -24,7 +24,7 @@ The ID of the app return box names for #### Defined in -[src/types/app-manager.ts:80](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L80) +[src/types/app-manager.ts:79](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L79) ___ @@ -36,7 +36,7 @@ The name of the box to return either as a string, binary array or `BoxName` #### Defined in -[src/types/app-manager.ts:82](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L82) +[src/types/app-manager.ts:81](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L81) ___ @@ -48,4 +48,4 @@ The ABI type to decode the value using #### Defined in -[src/types/app-manager.ts:84](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L84) +[src/types/app-manager.ts:83](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L83) diff --git a/docs/code/interfaces/types_app_manager.BoxValuesRequestParams.md b/docs/code/interfaces/types_app_manager.BoxValuesRequestParams.md index 6d5acc4e4..8b8c537c7 100644 --- a/docs/code/interfaces/types_app_manager.BoxValuesRequestParams.md +++ b/docs/code/interfaces/types_app_manager.BoxValuesRequestParams.md @@ -24,7 +24,7 @@ The ID of the app return box names for #### Defined in -[src/types/app-manager.ts:92](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L92) +[src/types/app-manager.ts:91](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L91) ___ @@ -36,7 +36,7 @@ The names of the boxes to return either as a string, binary array or BoxName` #### Defined in -[src/types/app-manager.ts:94](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L94) +[src/types/app-manager.ts:93](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L93) ___ @@ -48,4 +48,4 @@ The ABI type to decode the value using #### Defined in -[src/types/app-manager.ts:96](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L96) +[src/types/app-manager.ts:95](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L95) diff --git a/docs/code/interfaces/types_app_spec.AppSpec.md b/docs/code/interfaces/types_app_spec.AppSpec.md index a589cbaf8..47d710fc3 100644 --- a/docs/code/interfaces/types_app_spec.AppSpec.md +++ b/docs/code/interfaces/types_app_spec.AppSpec.md @@ -33,7 +33,7 @@ ___ ### contract -• **contract**: `ABIContractParams` +• **contract**: `ContractDefinition` The ABI-0004 contract definition see https://github.com/algorandfoundation/ARCs/blob/main/ARCs/arc-0004.md diff --git a/docs/code/interfaces/types_testing.AlgoKitLogCaptureFixture.md b/docs/code/interfaces/types_testing.AlgoKitLogCaptureFixture.md index cf71144f2..b2deed769 100644 --- a/docs/code/interfaces/types_testing.AlgoKitLogCaptureFixture.md +++ b/docs/code/interfaces/types_testing.AlgoKitLogCaptureFixture.md @@ -33,7 +33,7 @@ Testing framework agnostic handler method to run after each test to reset the lo #### Defined in -[src/types/testing.ts:156](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L156) +[src/types/testing.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L157) ___ @@ -53,7 +53,7 @@ Testing framework agnostic handler method to run before each test to prepare the #### Defined in -[src/types/testing.ts:152](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L152) +[src/types/testing.ts:153](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L153) ## Accessors @@ -69,4 +69,4 @@ The test logger instance for the current test #### Defined in -[src/types/testing.ts:148](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L148) +[src/types/testing.ts:149](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L149) diff --git a/docs/code/interfaces/types_testing.AlgorandFixture.md b/docs/code/interfaces/types_testing.AlgorandFixture.md index 00593f9e6..421a8835e 100644 --- a/docs/code/interfaces/types_testing.AlgorandFixture.md +++ b/docs/code/interfaces/types_testing.AlgorandFixture.md @@ -39,7 +39,7 @@ Testing framework agnostic handler method to run before each test to prepare the #### Defined in -[src/types/testing.ts:88](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L88) +[src/types/testing.ts:89](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L89) ___ @@ -95,7 +95,7 @@ describe('MY MODULE', () => { #### Defined in -[src/types/testing.ts:128](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L128) +[src/types/testing.ts:129](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L129) ## Accessors @@ -111,7 +111,7 @@ Retrieve an `AlgorandClient` loaded with the current context, including testAcco #### Defined in -[src/types/testing.ts:82](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L82) +[src/types/testing.ts:83](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L83) ___ @@ -138,4 +138,4 @@ test('My test', () => { #### Defined in -[src/types/testing.ts:77](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L77) +[src/types/testing.ts:78](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L78) diff --git a/docs/code/interfaces/types_testing.AlgorandFixtureConfig.md b/docs/code/interfaces/types_testing.AlgorandFixtureConfig.md index 637ac367a..587e835d0 100644 --- a/docs/code/interfaces/types_testing.AlgorandFixtureConfig.md +++ b/docs/code/interfaces/types_testing.AlgorandFixtureConfig.md @@ -50,7 +50,7 @@ Optional override for how to get an account; this allows you to retrieve account #### Defined in -[src/types/testing.ts:60](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L60) +[src/types/testing.ts:61](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L61) ___ @@ -62,7 +62,7 @@ An optional algod client, if not specified then it will create one against `algo #### Defined in -[src/types/testing.ts:52](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L52) +[src/types/testing.ts:53](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L53) ___ @@ -90,7 +90,7 @@ An optional indexer client, if not specified then it will create one against `in #### Defined in -[src/types/testing.ts:54](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L54) +[src/types/testing.ts:55](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L55) ___ @@ -118,7 +118,7 @@ An optional kmd client, if not specified then it will create one against `kmdCon #### Defined in -[src/types/testing.ts:56](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L56) +[src/types/testing.ts:57](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L57) ___ @@ -146,4 +146,4 @@ The amount of funds to allocate to the default testing account, if not specified #### Defined in -[src/types/testing.ts:58](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L58) +[src/types/testing.ts:59](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L59) diff --git a/docs/code/interfaces/types_testing.AlgorandTestAutomationContext.md b/docs/code/interfaces/types_testing.AlgorandTestAutomationContext.md index c3b537122..6e7d42edc 100644 --- a/docs/code/interfaces/types_testing.AlgorandTestAutomationContext.md +++ b/docs/code/interfaces/types_testing.AlgorandTestAutomationContext.md @@ -30,7 +30,7 @@ Algod client instance that will log transactions in `transactionLogger` #### Defined in -[src/types/testing.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L20) +[src/types/testing.ts:21](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L21) ___ @@ -42,7 +42,7 @@ An AlgorandClient instance loaded with the current context, including testAccoun #### Defined in -[src/types/testing.ts:18](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L18) +[src/types/testing.ts:19](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L19) ___ @@ -68,7 +68,7 @@ Generate and fund an additional ephemerally created account #### Defined in -[src/types/testing.ts:30](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L30) +[src/types/testing.ts:31](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L31) ___ @@ -80,7 +80,7 @@ Indexer client instance #### Defined in -[src/types/testing.ts:22](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L22) +[src/types/testing.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L23) ___ @@ -92,7 +92,7 @@ KMD client instance #### Defined in -[src/types/testing.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L24) +[src/types/testing.ts:25](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L25) ___ @@ -104,7 +104,7 @@ Default, funded test account that is ephemerally created #### Defined in -[src/types/testing.ts:28](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L28) +[src/types/testing.ts:29](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L29) ___ @@ -116,7 +116,7 @@ Transaction logger that will log transaction IDs for all transactions issued by #### Defined in -[src/types/testing.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L26) +[src/types/testing.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L27) ___ @@ -136,7 +136,7 @@ Wait for the indexer to catch up with all transactions logged by `transactionLog #### Defined in -[src/types/testing.ts:32](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L32) +[src/types/testing.ts:33](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L33) ___ @@ -162,4 +162,4 @@ Wait for the indexer to catch up with the given transaction ID #### Defined in -[src/types/testing.ts:34](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L34) +[src/types/testing.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L35) diff --git a/docs/code/interfaces/types_testing.GetTestAccountParams.md b/docs/code/interfaces/types_testing.GetTestAccountParams.md index cd79cbc1e..8a9e439b5 100644 --- a/docs/code/interfaces/types_testing.GetTestAccountParams.md +++ b/docs/code/interfaces/types_testing.GetTestAccountParams.md @@ -38,7 +38,7 @@ Optional override for how to get a test account; this allows you to retrieve acc #### Defined in -[src/types/testing.ts:46](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L46) +[src/types/testing.ts:47](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L47) ___ @@ -50,7 +50,7 @@ Initial funds to ensure the account has #### Defined in -[src/types/testing.ts:42](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L42) +[src/types/testing.ts:43](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L43) ___ @@ -62,4 +62,4 @@ Whether to suppress the log (which includes a mnemonic) or not (default: do not #### Defined in -[src/types/testing.ts:44](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L44) +[src/types/testing.ts:45](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L45) diff --git a/docs/code/interfaces/types_testing.LogSnapshotConfig.md b/docs/code/interfaces/types_testing.LogSnapshotConfig.md index 284510561..7b551bd88 100644 --- a/docs/code/interfaces/types_testing.LogSnapshotConfig.md +++ b/docs/code/interfaces/types_testing.LogSnapshotConfig.md @@ -27,7 +27,7 @@ Any accounts/addresses to replace the address for predictably #### Defined in -[src/types/testing.ts:139](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L139) +[src/types/testing.ts:140](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L140) ___ @@ -39,7 +39,7 @@ Any app IDs to replace predictably #### Defined in -[src/types/testing.ts:141](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L141) +[src/types/testing.ts:142](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L142) ___ @@ -65,7 +65,7 @@ Optional filter predicate to filter out logs #### Defined in -[src/types/testing.ts:143](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L143) +[src/types/testing.ts:144](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L144) ___ @@ -77,4 +77,4 @@ Any transaction IDs or transactions to replace the ID for predictably #### Defined in -[src/types/testing.ts:137](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L137) +[src/types/testing.ts:138](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/testing.ts#L138) diff --git a/docs/code/modules/index.indexer.md b/docs/code/modules/index.indexer.md index 2bfef4727..94bcf4b6b 100644 --- a/docs/code/modules/index.indexer.md +++ b/docs/code/modules/index.indexer.md @@ -25,7 +25,7 @@ #### Defined in -[src/indexer-lookup.ts:4](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L4) +[src/indexer-lookup.ts:5](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L5) ## Functions @@ -53,7 +53,7 @@ #### Defined in -[src/indexer-lookup.ts:123](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L123) +[src/indexer-lookup.ts:124](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L124) ___ @@ -80,7 +80,7 @@ The list of application results #### Defined in -[src/indexer-lookup.ts:16](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L16) +[src/indexer-lookup.ts:17](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L17) ___ @@ -107,7 +107,7 @@ The list of application results #### Defined in -[src/indexer-lookup.ts:50](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L50) +[src/indexer-lookup.ts:51](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L51) ___ @@ -133,4 +133,4 @@ The search results #### Defined in -[src/indexer-lookup.ts:89](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L89) +[src/indexer-lookup.ts:90](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/indexer-lookup.ts#L90) diff --git a/docs/code/modules/testing.md b/docs/code/modules/testing.md index ee990c172..d9169828d 100644 --- a/docs/code/modules/testing.md +++ b/docs/code/modules/testing.md @@ -178,7 +178,7 @@ Note: By default this will log the mnemonic of the account. #### Defined in -[src/testing/account.ts:21](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/account.ts#L21) +[src/testing/account.ts:22](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/account.ts#L22) ▸ **getTestAccount**(`params`, `algorand`): `Promise`\<`Address` & `Account` & `AddressWithSigner`\> @@ -202,7 +202,7 @@ The account, with private key loaded #### Defined in -[src/testing/account.ts:35](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/account.ts#L35) +[src/testing/account.ts:36](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/testing/account.ts#L36) ___ diff --git a/docs/code/modules/types_account.md b/docs/code/modules/types_account.md index ba06cacf6..8d5c085c1 100644 --- a/docs/code/modules/types_account.md +++ b/docs/code/modules/types_account.md @@ -38,7 +38,7 @@ Account asset holding information at a given round. #### Defined in -[src/types/account.ts:277](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L277) +[src/types/account.ts:278](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L278) ___ @@ -81,7 +81,7 @@ Account information at a given round. #### Defined in -[src/types/account.ts:128](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L128) +[src/types/account.ts:129](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L129) ___ @@ -95,7 +95,7 @@ Use AddressWithSigner #### Defined in -[src/types/account.ts:125](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L125) +[src/types/account.ts:126](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L126) ## Variables @@ -107,4 +107,4 @@ The account name identifier used for fund dispensing in test environments #### Defined in -[src/types/account.ts:19](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L19) +[src/types/account.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/account.ts#L20) diff --git a/docs/code/modules/types_app.md b/docs/code/modules/types_app.md index 9d429cf3d..afba30a8c 100644 --- a/docs/code/modules/types_app.md +++ b/docs/code/modules/types_app.md @@ -57,7 +57,7 @@ An argument for an ABI method, either a primitive value, or a transaction with o #### Defined in -[src/types/app.ts:72](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L72) +[src/types/app.ts:73](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L73) ___ @@ -69,7 +69,7 @@ App call args for an ABI call #### Defined in -[src/types/app.ts:84](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L84) +[src/types/app.ts:85](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L85) ___ @@ -83,7 +83,7 @@ Arguments to pass to an app call either: #### Defined in -[src/types/app.ts:95](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L95) +[src/types/app.ts:96](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L96) ___ @@ -95,7 +95,7 @@ Result from calling an app #### Defined in -[src/types/app.ts:147](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L147) +[src/types/app.ts:148](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L148) ___ @@ -117,7 +117,7 @@ ___ #### Defined in -[src/types/app.ts:222](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L222) +[src/types/app.ts:223](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L223) ___ @@ -129,7 +129,7 @@ Result from sending a single app transaction. #### Defined in -[src/types/app.ts:239](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L239) +[src/types/app.ts:240](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L240) ___ @@ -141,7 +141,7 @@ Result from sending a single app transaction. #### Defined in -[src/types/app.ts:228](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L228) +[src/types/app.ts:229](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L229) ___ @@ -153,7 +153,7 @@ Result from sending a single app transaction. #### Defined in -[src/types/app.ts:236](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L236) +[src/types/app.ts:237](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L237) ## Variables @@ -165,7 +165,7 @@ First 4 bytes of SHA-512/256 hash of "return" for retrieving ABI return values #### Defined in -[src/types/app.ts:32](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L32) +[src/types/app.ts:33](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L33) ___ @@ -177,7 +177,7 @@ The app create/update [ARC-2](https://github.com/algorandfoundation/ARCs/blob/ma #### Defined in -[src/types/app.ts:26](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L26) +[src/types/app.ts:27](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L27) ___ @@ -189,7 +189,7 @@ The maximum number of bytes in a single app code page #### Defined in -[src/types/app.ts:29](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L29) +[src/types/app.ts:30](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L30) ___ @@ -201,7 +201,7 @@ The name of the TEAL template variable for deploy-time permanence control #### Defined in -[src/types/app.ts:23](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L23) +[src/types/app.ts:24](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L24) ___ @@ -213,4 +213,4 @@ The name of the TEAL template variable for deploy-time immutability control #### Defined in -[src/types/app.ts:20](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L20) +[src/types/app.ts:21](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app.ts#L21) diff --git a/docs/code/modules/types_app_manager.md b/docs/code/modules/types_app_manager.md index b471ed0b4..9eff1ec60 100644 --- a/docs/code/modules/types_app_manager.md +++ b/docs/code/modules/types_app_manager.md @@ -33,4 +33,4 @@ Something that identifies an app box name - either a: #### Defined in -[src/types/app-manager.ts:59](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L59) +[src/types/app-manager.ts:58](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-manager.ts#L58) From a2dfe6b996fd031bd1a21c1b70cb1f9efe514027 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 1 Dec 2025 09:51:14 +1000 Subject: [PATCH 39/43] lint + docs --- .../classes/types_app_client.AppClient.md | 122 +++++++++--------- .../types_app_client.AppClientCallABIArgs.md | 2 +- ...ypes_app_client.AppClientCallCoreParams.md | 6 +- ...s_app_client.AppClientCompilationParams.md | 6 +- ...s_app_client.AppClientCompilationResult.md | 4 +- ...ient.AppClientDeployCallInterfaceParams.md | 10 +- ...es_app_client.AppClientDeployCoreParams.md | 14 +- .../types_app_client.AppClientDeployParams.md | 26 ++-- .../types_app_client.AppClientParams.md | 16 +-- .../types_app_client.AppSourceMaps.md | 4 +- .../types_app_client.FundAppAccountParams.md | 8 +- .../types_app_client.ResolveAppById.md | 6 +- .../types_app_client.ResolveAppByIdBase.md | 4 +- .../types_app_client.SourceMapExport.md | 8 +- docs/code/modules/types_app_client.md | 44 +++---- src/types/app-client.spec.ts | 1 - src/types/app-client.ts | 1 - src/types/app-factory-and-client.spec.ts | 1 - 18 files changed, 140 insertions(+), 143 deletions(-) diff --git a/docs/code/classes/types_app_client.AppClient.md b/docs/code/classes/types_app_client.AppClient.md index 2aeaa49d6..f7accd5b9 100644 --- a/docs/code/classes/types_app_client.AppClient.md +++ b/docs/code/classes/types_app_client.AppClient.md @@ -113,7 +113,7 @@ const appClient = new AppClient({ #### Defined in -[src/types/app-client.ts:464](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L464) +[src/types/app-client.ts:463](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L463) ## Properties @@ -123,7 +123,7 @@ const appClient = new AppClient({ #### Defined in -[src/types/app-client.ts:430](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L430) +[src/types/app-client.ts:429](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L429) ___ @@ -133,7 +133,7 @@ ___ #### Defined in -[src/types/app-client.ts:427](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L427) +[src/types/app-client.ts:426](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L426) ___ @@ -143,7 +143,7 @@ ___ #### Defined in -[src/types/app-client.ts:426](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L426) +[src/types/app-client.ts:425](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L425) ___ @@ -153,7 +153,7 @@ ___ #### Defined in -[src/types/app-client.ts:428](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L428) +[src/types/app-client.ts:427](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L427) ___ @@ -163,7 +163,7 @@ ___ #### Defined in -[src/types/app-client.ts:429](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L429) +[src/types/app-client.ts:428](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L428) ___ @@ -173,7 +173,7 @@ ___ #### Defined in -[src/types/app-client.ts:434](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L434) +[src/types/app-client.ts:433](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L433) ___ @@ -192,7 +192,7 @@ ___ #### Defined in -[src/types/app-client.ts:439](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L439) +[src/types/app-client.ts:438](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L438) ___ @@ -202,7 +202,7 @@ ___ #### Defined in -[src/types/app-client.ts:435](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L435) +[src/types/app-client.ts:434](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L434) ___ @@ -212,7 +212,7 @@ ___ #### Defined in -[src/types/app-client.ts:444](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L444) +[src/types/app-client.ts:443](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L443) ___ @@ -222,7 +222,7 @@ ___ #### Defined in -[src/types/app-client.ts:431](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L431) +[src/types/app-client.ts:430](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L430) ___ @@ -232,7 +232,7 @@ ___ #### Defined in -[src/types/app-client.ts:432](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L432) +[src/types/app-client.ts:431](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L431) ___ @@ -251,7 +251,7 @@ ___ #### Defined in -[src/types/app-client.ts:438](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L438) +[src/types/app-client.ts:437](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L437) ___ @@ -268,7 +268,7 @@ ___ #### Defined in -[src/types/app-client.ts:450](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L450) +[src/types/app-client.ts:449](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L449) ___ @@ -299,7 +299,7 @@ ___ #### Defined in -[src/types/app-client.ts:437](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L437) +[src/types/app-client.ts:436](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L436) ___ @@ -309,7 +309,7 @@ ___ #### Defined in -[src/types/app-client.ts:441](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L441) +[src/types/app-client.ts:440](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L440) ___ @@ -319,7 +319,7 @@ ___ #### Defined in -[src/types/app-client.ts:447](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L447) +[src/types/app-client.ts:446](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L446) ## Accessors @@ -335,7 +335,7 @@ A reference to the underlying `AlgorandClient` this app client is using. #### Defined in -[src/types/app-client.ts:631](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L631) +[src/types/app-client.ts:630](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L630) ___ @@ -351,7 +351,7 @@ The app address of the app instance this client is linked to. #### Defined in -[src/types/app-client.ts:616](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L616) +[src/types/app-client.ts:615](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L615) ___ @@ -367,7 +367,7 @@ The ID of the app instance this client is linked to. #### Defined in -[src/types/app-client.ts:611](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L611) +[src/types/app-client.ts:610](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L610) ___ @@ -383,7 +383,7 @@ The name of the app (from the ARC-32 / ARC-56 app spec or override). #### Defined in -[src/types/app-client.ts:621](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L621) +[src/types/app-client.ts:620](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L620) ___ @@ -399,7 +399,7 @@ The ARC-56 app spec being used #### Defined in -[src/types/app-client.ts:626](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L626) +[src/types/app-client.ts:625](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L625) ___ @@ -415,7 +415,7 @@ Create transactions for the current app #### Defined in -[src/types/app-client.ts:655](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L655) +[src/types/app-client.ts:654](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L654) ___ @@ -448,7 +448,7 @@ await appClient.send.call({method: 'my_method2', args: [myMethodCall]}) #### Defined in -[src/types/app-client.ts:650](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L650) +[src/types/app-client.ts:649](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L649) ___ @@ -464,7 +464,7 @@ Send transactions to the current app #### Defined in -[src/types/app-client.ts:660](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L660) +[src/types/app-client.ts:659](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L659) ___ @@ -494,7 +494,7 @@ Get state (local, global, box) from the current app #### Defined in -[src/types/app-client.ts:665](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L665) +[src/types/app-client.ts:664](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L664) ## Methods @@ -530,7 +530,7 @@ const appClient2 = appClient.clone({ defaultSender: 'NEW_SENDER_ADDRESS' }) #### Defined in -[src/types/app-client.ts:519](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L519) +[src/types/app-client.ts:518](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L518) ___ @@ -560,7 +560,7 @@ The compiled code and any compilation results (including source maps) #### Defined in -[src/types/app-client.ts:896](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L896) +[src/types/app-client.ts:895](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L895) ___ @@ -578,7 +578,7 @@ The source maps #### Defined in -[src/types/app-client.ts:835](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L835) +[src/types/app-client.ts:834](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L834) ___ @@ -604,7 +604,7 @@ The new error, or if there was no logic error or source map then the wrapped err #### Defined in -[src/types/app-client.ts:813](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L813) +[src/types/app-client.ts:812](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L812) ___ @@ -653,7 +653,7 @@ await appClient.fundAppAccount({ amount: algo(1) }) #### Defined in -[src/types/app-client.ts:694](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L694) +[src/types/app-client.ts:693](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L693) ___ @@ -680,7 +680,7 @@ It does this by replacing any `undefined` values with the equivalent default val #### Defined in -[src/types/app-client.ts:1057](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1057) +[src/types/app-client.ts:1056](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1056) ___ @@ -704,7 +704,7 @@ A tuple with: [ARC-56 `Method`, algosdk `ABIMethod`] #### Defined in -[src/types/app-client.ts:863](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L863) +[src/types/app-client.ts:862](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L862) ___ @@ -732,7 +732,7 @@ ___ #### Defined in -[src/types/app-client.ts:1487](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1487) +[src/types/app-client.ts:1486](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1486) ___ @@ -755,7 +755,7 @@ ___ #### Defined in -[src/types/app-client.ts:1177](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1177) +[src/types/app-client.ts:1176](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1176) ___ @@ -783,7 +783,7 @@ ___ #### Defined in -[src/types/app-client.ts:1474](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1474) +[src/types/app-client.ts:1473](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1473) ___ @@ -806,7 +806,7 @@ ___ #### Defined in -[src/types/app-client.ts:1142](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1142) +[src/types/app-client.ts:1141](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1141) ___ @@ -829,7 +829,7 @@ ___ #### Defined in -[src/types/app-client.ts:1206](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1206) +[src/types/app-client.ts:1205](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1205) ___ @@ -850,7 +850,7 @@ ___ #### Defined in -[src/types/app-client.ts:1557](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1557) +[src/types/app-client.ts:1556](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1556) ___ @@ -874,7 +874,7 @@ const boxNames = await appClient.getBoxNames() #### Defined in -[src/types/app-client.ts:731](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L731) +[src/types/app-client.ts:730](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L730) ___ @@ -904,7 +904,7 @@ const boxValue = await appClient.getBoxValue('boxName') #### Defined in -[src/types/app-client.ts:744](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L744) +[src/types/app-client.ts:743](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L743) ___ @@ -935,7 +935,7 @@ const boxValue = await appClient.getBoxValueFromABIType('boxName', new ABIUintTy #### Defined in -[src/types/app-client.ts:758](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L758) +[src/types/app-client.ts:757](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L757) ___ @@ -966,7 +966,7 @@ const boxValues = await appClient.getBoxValues() #### Defined in -[src/types/app-client.ts:776](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L776) +[src/types/app-client.ts:775](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L775) ___ @@ -998,7 +998,7 @@ const boxValues = await appClient.getBoxValuesFromABIType(new ABIUintType(32)) #### Defined in -[src/types/app-client.ts:796](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L796) +[src/types/app-client.ts:795](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L795) ___ @@ -1020,7 +1020,7 @@ ___ #### Defined in -[src/types/app-client.ts:1111](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1111) +[src/types/app-client.ts:1110](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1110) ___ @@ -1044,7 +1044,7 @@ const globalState = await appClient.getGlobalState() #### Defined in -[src/types/app-client.ts:706](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L706) +[src/types/app-client.ts:705](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L705) ___ @@ -1074,7 +1074,7 @@ const localState = await appClient.getLocalState('ACCOUNT_ADDRESS') #### Defined in -[src/types/app-client.ts:719](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L719) +[src/types/app-client.ts:718](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L718) ___ @@ -1097,7 +1097,7 @@ ___ #### Defined in -[src/types/app-client.ts:1403](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1403) +[src/types/app-client.ts:1402](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1402) ___ @@ -1120,7 +1120,7 @@ ___ #### Defined in -[src/types/app-client.ts:1239](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1239) +[src/types/app-client.ts:1238](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1238) ___ @@ -1143,7 +1143,7 @@ ___ #### Defined in -[src/types/app-client.ts:1301](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1301) +[src/types/app-client.ts:1300](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1300) ___ @@ -1166,7 +1166,7 @@ if none provided and throws an error if neither provided #### Defined in -[src/types/app-client.ts:1457](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1457) +[src/types/app-client.ts:1456](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1456) ___ @@ -1191,7 +1191,7 @@ or `undefined` otherwise (so the signer is resolved from `AlgorandClient`) #### Defined in -[src/types/app-client.ts:1467](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1467) +[src/types/app-client.ts:1466](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1466) ___ @@ -1220,7 +1220,7 @@ ___ #### Defined in -[src/types/app-client.ts:1627](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1627) +[src/types/app-client.ts:1626](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1626) ___ @@ -1242,7 +1242,7 @@ Make the given call and catch any errors, augmenting with debugging information #### Defined in -[src/types/app-client.ts:1511](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1511) +[src/types/app-client.ts:1510](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1510) ___ @@ -1264,7 +1264,7 @@ Import source maps for the app. #### Defined in -[src/types/app-client.ts:852](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L852) +[src/types/app-client.ts:851](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L851) ___ @@ -1298,7 +1298,7 @@ The smart contract response with an updated return value #### Defined in -[src/types/app-client.ts:877](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L877) +[src/types/app-client.ts:876](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L876) ___ @@ -1330,7 +1330,7 @@ The compiled code and any compilation results (including source maps) #### Defined in -[src/types/app-client.ts:1004](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1004) +[src/types/app-client.ts:1003](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L1003) ___ @@ -1363,7 +1363,7 @@ The new error, or if there was no logic error or source map then the wrapped err #### Defined in -[src/types/app-client.ts:920](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L920) +[src/types/app-client.ts:919](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L919) ___ @@ -1408,7 +1408,7 @@ const appClient = await AppClient.fromCreatorAndName({ #### Defined in -[src/types/app-client.ts:547](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L547) +[src/types/app-client.ts:546](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L546) ___ @@ -1450,7 +1450,7 @@ const appClient = await AppClient.fromNetwork({ #### Defined in -[src/types/app-client.ts:576](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L576) +[src/types/app-client.ts:575](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L575) ___ @@ -1481,4 +1481,4 @@ const arc56AppSpec = AppClient.normaliseAppSpec(appSpec) #### Defined in -[src/types/app-client.ts:604](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L604) +[src/types/app-client.ts:603](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L603) diff --git a/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md b/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md index 449f132c0..6755121d7 100644 --- a/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md +++ b/docs/code/interfaces/types_app_client.AppClientCallABIArgs.md @@ -113,7 +113,7 @@ If calling an ABI method then either the name of the method, or the ABI signatur #### Defined in -[src/types/app-client.ts:179](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L179) +[src/types/app-client.ts:178](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L178) ___ diff --git a/docs/code/interfaces/types_app_client.AppClientCallCoreParams.md b/docs/code/interfaces/types_app_client.AppClientCallCoreParams.md index 01dacd7a7..36d439ebe 100644 --- a/docs/code/interfaces/types_app_client.AppClientCallCoreParams.md +++ b/docs/code/interfaces/types_app_client.AppClientCallCoreParams.md @@ -24,7 +24,7 @@ The transaction note for the smart contract call #### Defined in -[src/types/app-client.ts:190](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L190) +[src/types/app-client.ts:189](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L189) ___ @@ -36,7 +36,7 @@ Parameters to control transaction sending #### Defined in -[src/types/app-client.ts:192](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L192) +[src/types/app-client.ts:191](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L191) ___ @@ -48,4 +48,4 @@ The optional sender to send the transaction from, will use the application clien #### Defined in -[src/types/app-client.ts:188](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L188) +[src/types/app-client.ts:187](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L187) diff --git a/docs/code/interfaces/types_app_client.AppClientCompilationParams.md b/docs/code/interfaces/types_app_client.AppClientCompilationParams.md index 318b8374c..e4c12da9b 100644 --- a/docs/code/interfaces/types_app_client.AppClientCompilationParams.md +++ b/docs/code/interfaces/types_app_client.AppClientCompilationParams.md @@ -22,7 +22,7 @@ Whether or not the contract should have deploy-time permanence control set, unde #### Defined in -[src/types/app-client.ts:207](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L207) +[src/types/app-client.ts:206](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L206) ___ @@ -34,7 +34,7 @@ Any deploy-time parameters to replace in the TEAL code #### Defined in -[src/types/app-client.ts:203](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L203) +[src/types/app-client.ts:202](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L202) ___ @@ -46,4 +46,4 @@ Whether or not the contract should have deploy-time immutability control set, un #### Defined in -[src/types/app-client.ts:205](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L205) +[src/types/app-client.ts:204](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L204) diff --git a/docs/code/interfaces/types_app_client.AppClientCompilationResult.md b/docs/code/interfaces/types_app_client.AppClientCompilationResult.md index bcd1ff6fc..d2e8c9599 100644 --- a/docs/code/interfaces/types_app_client.AppClientCompilationResult.md +++ b/docs/code/interfaces/types_app_client.AppClientCompilationResult.md @@ -33,7 +33,7 @@ The compiled bytecode of the approval program, ready to deploy to algod #### Defined in -[src/types/app-client.ts:260](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L260) +[src/types/app-client.ts:259](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L259) ___ @@ -45,7 +45,7 @@ The compiled bytecode of the clear state program, ready to deploy to algod #### Defined in -[src/types/app-client.ts:262](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L262) +[src/types/app-client.ts:261](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L261) ___ diff --git a/docs/code/interfaces/types_app_client.AppClientDeployCallInterfaceParams.md b/docs/code/interfaces/types_app_client.AppClientDeployCallInterfaceParams.md index d0cb7d3f3..e02ccc6ca 100644 --- a/docs/code/interfaces/types_app_client.AppClientDeployCallInterfaceParams.md +++ b/docs/code/interfaces/types_app_client.AppClientDeployCallInterfaceParams.md @@ -32,7 +32,7 @@ Any args to pass to any create transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L160) +[src/types/app-client.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L159) ___ @@ -44,7 +44,7 @@ Override the on-completion action for the create call; defaults to NoOp #### Defined in -[src/types/app-client.ts:162](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L162) +[src/types/app-client.ts:161](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L161) ___ @@ -56,7 +56,7 @@ Any args to pass to any delete transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:166](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L166) +[src/types/app-client.ts:165](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L165) ___ @@ -68,7 +68,7 @@ Any deploy-time parameters to replace in the TEAL code #### Defined in -[src/types/app-client.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L158) +[src/types/app-client.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L157) ___ @@ -80,4 +80,4 @@ Any args to pass to any update transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:164](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L164) +[src/types/app-client.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L163) diff --git a/docs/code/interfaces/types_app_client.AppClientDeployCoreParams.md b/docs/code/interfaces/types_app_client.AppClientDeployCoreParams.md index bc7a94b2b..dfda3259c 100644 --- a/docs/code/interfaces/types_app_client.AppClientDeployCoreParams.md +++ b/docs/code/interfaces/types_app_client.AppClientDeployCoreParams.md @@ -35,7 +35,7 @@ If this is not specified then it will automatically be determined based on the A #### Defined in -[src/types/app-client.ts:148](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L148) +[src/types/app-client.ts:147](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L147) ___ @@ -48,7 +48,7 @@ If this is not specified then it will automatically be determined based on the A #### Defined in -[src/types/app-client.ts:144](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L144) +[src/types/app-client.ts:143](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L143) ___ @@ -60,7 +60,7 @@ What action to perform if a schema break is detected #### Defined in -[src/types/app-client.ts:150](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L150) +[src/types/app-client.ts:149](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L149) ___ @@ -72,7 +72,7 @@ What action to perform if a TEAL update is detected #### Defined in -[src/types/app-client.ts:152](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L152) +[src/types/app-client.ts:151](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L151) ___ @@ -84,7 +84,7 @@ Parameters to control transaction sending #### Defined in -[src/types/app-client.ts:140](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L140) +[src/types/app-client.ts:139](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L139) ___ @@ -96,7 +96,7 @@ The optional sender to send the transaction from, will use the application clien #### Defined in -[src/types/app-client.ts:138](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L138) +[src/types/app-client.ts:137](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L137) ___ @@ -108,4 +108,4 @@ The version of the contract, uses "1.0" by default #### Defined in -[src/types/app-client.ts:136](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L136) +[src/types/app-client.ts:135](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L135) diff --git a/docs/code/interfaces/types_app_client.AppClientDeployParams.md b/docs/code/interfaces/types_app_client.AppClientDeployParams.md index 550e0f8d7..7454794b3 100644 --- a/docs/code/interfaces/types_app_client.AppClientDeployParams.md +++ b/docs/code/interfaces/types_app_client.AppClientDeployParams.md @@ -47,7 +47,7 @@ If this is not specified then it will automatically be determined based on the A #### Defined in -[src/types/app-client.ts:148](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L148) +[src/types/app-client.ts:147](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L147) ___ @@ -64,7 +64,7 @@ If this is not specified then it will automatically be determined based on the A #### Defined in -[src/types/app-client.ts:144](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L144) +[src/types/app-client.ts:143](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L143) ___ @@ -80,7 +80,7 @@ Any args to pass to any create transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:160](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L160) +[src/types/app-client.ts:159](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L159) ___ @@ -96,7 +96,7 @@ Override the on-completion action for the create call; defaults to NoOp #### Defined in -[src/types/app-client.ts:162](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L162) +[src/types/app-client.ts:161](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L161) ___ @@ -112,7 +112,7 @@ Any args to pass to any delete transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:166](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L166) +[src/types/app-client.ts:165](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L165) ___ @@ -128,7 +128,7 @@ Any deploy-time parameters to replace in the TEAL code #### Defined in -[src/types/app-client.ts:158](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L158) +[src/types/app-client.ts:157](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L157) ___ @@ -144,7 +144,7 @@ What action to perform if a schema break is detected #### Defined in -[src/types/app-client.ts:150](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L150) +[src/types/app-client.ts:149](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L149) ___ @@ -160,7 +160,7 @@ What action to perform if a TEAL update is detected #### Defined in -[src/types/app-client.ts:152](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L152) +[src/types/app-client.ts:151](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L151) ___ @@ -172,7 +172,7 @@ Any overrides for the storage schema to request for the created app; by default #### Defined in -[src/types/app-client.ts:172](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L172) +[src/types/app-client.ts:171](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L171) ___ @@ -188,7 +188,7 @@ Parameters to control transaction sending #### Defined in -[src/types/app-client.ts:140](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L140) +[src/types/app-client.ts:139](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L139) ___ @@ -204,7 +204,7 @@ The optional sender to send the transaction from, will use the application clien #### Defined in -[src/types/app-client.ts:138](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L138) +[src/types/app-client.ts:137](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L137) ___ @@ -220,7 +220,7 @@ Any args to pass to any update transaction that is issued as part of deployment #### Defined in -[src/types/app-client.ts:164](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L164) +[src/types/app-client.ts:163](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L163) ___ @@ -236,4 +236,4 @@ The version of the contract, uses "1.0" by default #### Defined in -[src/types/app-client.ts:136](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L136) +[src/types/app-client.ts:135](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L135) diff --git a/docs/code/interfaces/types_app_client.AppClientParams.md b/docs/code/interfaces/types_app_client.AppClientParams.md index 422ee4dbd..c23da8b59 100644 --- a/docs/code/interfaces/types_app_client.AppClientParams.md +++ b/docs/code/interfaces/types_app_client.AppClientParams.md @@ -29,7 +29,7 @@ An `AlgorandClient` instance #### Defined in -[src/types/app-client.ts:278](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L278) +[src/types/app-client.ts:277](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L277) ___ @@ -41,7 +41,7 @@ The ID of the app instance this client should make calls against. #### Defined in -[src/types/app-client.ts:268](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L268) +[src/types/app-client.ts:267](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L267) ___ @@ -54,7 +54,7 @@ Defaults to the ARC-32/ARC-56 app spec name #### Defined in -[src/types/app-client.ts:284](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L284) +[src/types/app-client.ts:283](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L283) ___ @@ -69,7 +69,7 @@ The ARC-56 or ARC-32 application spec as either: #### Defined in -[src/types/app-client.ts:275](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L275) +[src/types/app-client.ts:274](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L274) ___ @@ -81,7 +81,7 @@ Optional source map for the approval program #### Defined in -[src/types/app-client.ts:290](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L290) +[src/types/app-client.ts:289](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L289) ___ @@ -93,7 +93,7 @@ Optional source map for the clear state program #### Defined in -[src/types/app-client.ts:292](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L292) +[src/types/app-client.ts:291](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L291) ___ @@ -105,7 +105,7 @@ Optional address to use for the account to use as the default sender for calls. #### Defined in -[src/types/app-client.ts:286](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L286) +[src/types/app-client.ts:285](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L285) ___ @@ -117,4 +117,4 @@ Optional signer to use as the default signer for default sender calls (if not sp #### Defined in -[src/types/app-client.ts:288](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L288) +[src/types/app-client.ts:287](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L287) diff --git a/docs/code/interfaces/types_app_client.AppSourceMaps.md b/docs/code/interfaces/types_app_client.AppSourceMaps.md index 19ca32b0e..608ef0832 100644 --- a/docs/code/interfaces/types_app_client.AppSourceMaps.md +++ b/docs/code/interfaces/types_app_client.AppSourceMaps.md @@ -23,7 +23,7 @@ The source map of the approval program #### Defined in -[src/types/app-client.ts:241](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L241) +[src/types/app-client.ts:240](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L240) ___ @@ -35,4 +35,4 @@ The source map of the clear program #### Defined in -[src/types/app-client.ts:243](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L243) +[src/types/app-client.ts:242](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L242) diff --git a/docs/code/interfaces/types_app_client.FundAppAccountParams.md b/docs/code/interfaces/types_app_client.FundAppAccountParams.md index c7cc2c7a6..1c3fc4652 100644 --- a/docs/code/interfaces/types_app_client.FundAppAccountParams.md +++ b/docs/code/interfaces/types_app_client.FundAppAccountParams.md @@ -23,7 +23,7 @@ Parameters for funding an app account #### Defined in -[src/types/app-client.ts:229](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L229) +[src/types/app-client.ts:228](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L228) ___ @@ -35,7 +35,7 @@ The transaction note for the smart contract call #### Defined in -[src/types/app-client.ts:233](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L233) +[src/types/app-client.ts:232](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L232) ___ @@ -47,7 +47,7 @@ Parameters to control transaction sending #### Defined in -[src/types/app-client.ts:235](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L235) +[src/types/app-client.ts:234](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L234) ___ @@ -59,4 +59,4 @@ The optional sender to send the transaction from, will use the application clien #### Defined in -[src/types/app-client.ts:231](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L231) +[src/types/app-client.ts:230](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L230) diff --git a/docs/code/interfaces/types_app_client.ResolveAppById.md b/docs/code/interfaces/types_app_client.ResolveAppById.md index c2aef8ae9..989d10e70 100644 --- a/docs/code/interfaces/types_app_client.ResolveAppById.md +++ b/docs/code/interfaces/types_app_client.ResolveAppById.md @@ -34,7 +34,7 @@ The id of an existing app to call using this client, or 0 if the app hasn't been #### Defined in -[src/types/app-client.ts:90](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L90) +[src/types/app-client.ts:89](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L89) ___ @@ -50,7 +50,7 @@ The optional name to use to mark the app when deploying `ApplicationClient.deplo #### Defined in -[src/types/app-client.ts:92](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L92) +[src/types/app-client.ts:91](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L91) ___ @@ -62,4 +62,4 @@ How the app ID is resolved, either by `'id'` or `'creatorAndName'`; must be `'cr #### Defined in -[src/types/app-client.ts:97](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L97) +[src/types/app-client.ts:96](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L96) diff --git a/docs/code/interfaces/types_app_client.ResolveAppByIdBase.md b/docs/code/interfaces/types_app_client.ResolveAppByIdBase.md index 3842ce940..57c1138ef 100644 --- a/docs/code/interfaces/types_app_client.ResolveAppByIdBase.md +++ b/docs/code/interfaces/types_app_client.ResolveAppByIdBase.md @@ -29,7 +29,7 @@ The id of an existing app to call using this client, or 0 if the app hasn't been #### Defined in -[src/types/app-client.ts:90](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L90) +[src/types/app-client.ts:89](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L89) ___ @@ -41,4 +41,4 @@ The optional name to use to mark the app when deploying `ApplicationClient.deplo #### Defined in -[src/types/app-client.ts:92](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L92) +[src/types/app-client.ts:91](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L91) diff --git a/docs/code/interfaces/types_app_client.SourceMapExport.md b/docs/code/interfaces/types_app_client.SourceMapExport.md index 2cd1e4e1b..ec81b1b23 100644 --- a/docs/code/interfaces/types_app_client.SourceMapExport.md +++ b/docs/code/interfaces/types_app_client.SourceMapExport.md @@ -21,7 +21,7 @@ #### Defined in -[src/types/app-client.ts:250](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L250) +[src/types/app-client.ts:249](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L249) ___ @@ -31,7 +31,7 @@ ___ #### Defined in -[src/types/app-client.ts:249](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L249) +[src/types/app-client.ts:248](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L248) ___ @@ -41,7 +41,7 @@ ___ #### Defined in -[src/types/app-client.ts:248](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L248) +[src/types/app-client.ts:247](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L247) ___ @@ -51,4 +51,4 @@ ___ #### Defined in -[src/types/app-client.ts:247](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L247) +[src/types/app-client.ts:246](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L246) diff --git a/docs/code/modules/types_app_client.md b/docs/code/modules/types_app_client.md index ebf0d75ae..3bd8e81c5 100644 --- a/docs/code/modules/types_app_client.md +++ b/docs/code/modules/types_app_client.md @@ -59,7 +59,7 @@ AppClient common parameters for a bare app call #### Defined in -[src/types/app-client.ts:305](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L305) +[src/types/app-client.ts:304](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L304) ___ @@ -71,7 +71,7 @@ The arguments to pass to an Application Client smart contract call #### Defined in -[src/types/app-client.ts:183](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L183) +[src/types/app-client.ts:182](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L182) ___ @@ -83,7 +83,7 @@ Parameters to construct a ApplicationClient contract call #### Defined in -[src/types/app-client.ts:196](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L196) +[src/types/app-client.ts:195](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L195) ___ @@ -93,7 +93,7 @@ ___ #### Defined in -[src/types/app-client.ts:175](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L175) +[src/types/app-client.ts:174](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L174) ___ @@ -105,7 +105,7 @@ Parameters to construct a ApplicationClient clear state contract call #### Defined in -[src/types/app-client.ts:199](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L199) +[src/types/app-client.ts:198](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L198) ___ @@ -123,7 +123,7 @@ On-complete action parameter for creating a contract using ApplicationClient #### Defined in -[src/types/app-client.ts:211](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L211) +[src/types/app-client.ts:210](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L210) ___ @@ -135,7 +135,7 @@ Parameters for creating a contract using ApplicationClient #### Defined in -[src/types/app-client.ts:217](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L217) +[src/types/app-client.ts:216](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L216) ___ @@ -147,7 +147,7 @@ AppClient common parameters for an ABI method call #### Defined in -[src/types/app-client.ts:313](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L313) +[src/types/app-client.ts:312](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L312) ___ @@ -159,7 +159,7 @@ Parameters for updating a contract using ApplicationClient #### Defined in -[src/types/app-client.ts:225](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L225) +[src/types/app-client.ts:224](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L224) ___ @@ -171,7 +171,7 @@ The details of an AlgoKit Utils deployed app #### Defined in -[src/types/app-client.ts:113](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L113) +[src/types/app-client.ts:112](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L112) ___ @@ -191,7 +191,7 @@ The details of an AlgoKit Utils deployed app #### Defined in -[src/types/app-client.ts:101](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L101) +[src/types/app-client.ts:100](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L100) ___ @@ -203,7 +203,7 @@ The details of an ARC-0032 app spec specified, AlgoKit Utils deployed app #### Defined in -[src/types/app-client.ts:131](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L131) +[src/types/app-client.ts:130](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L130) ___ @@ -221,7 +221,7 @@ The details of an ARC-0032 app spec specified, AlgoKit Utils deployed app #### Defined in -[src/types/app-client.ts:116](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L116) +[src/types/app-client.ts:115](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L115) ___ @@ -233,7 +233,7 @@ The details of an ARC-0032 app spec specified, AlgoKit Utils deployed app by cre #### Defined in -[src/types/app-client.ts:128](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L128) +[src/types/app-client.ts:127](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L127) ___ @@ -245,7 +245,7 @@ The details of an ARC-0032 app spec specified, AlgoKit Utils deployed app by id #### Defined in -[src/types/app-client.ts:125](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L125) +[src/types/app-client.ts:124](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L124) ___ @@ -263,7 +263,7 @@ onComplete parameter for a non-update app call #### Defined in -[src/types/app-client.ts:299](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L299) +[src/types/app-client.ts:298](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L298) ___ @@ -275,7 +275,7 @@ Parameters to clone an app client #### Defined in -[src/types/app-client.ts:296](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L296) +[src/types/app-client.ts:295](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L295) ___ @@ -287,7 +287,7 @@ Parameters for funding an app account #### Defined in -[src/types/app-client.ts:338](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L338) +[src/types/app-client.ts:337](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L337) ___ @@ -299,7 +299,7 @@ Configuration to resolve app by creator and name `getCreatorAppsByName` #### Defined in -[src/types/app-client.ts:82](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L82) +[src/types/app-client.ts:81](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L81) ___ @@ -319,7 +319,7 @@ Configuration to resolve app by creator and name `getCreatorAppsByName` #### Defined in -[src/types/app-client.ts:69](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L69) +[src/types/app-client.ts:68](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L68) ___ @@ -331,7 +331,7 @@ Resolve an app client instance by looking up an app created by the given creator #### Defined in -[src/types/app-client.ts:347](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L347) +[src/types/app-client.ts:346](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L346) ___ @@ -343,4 +343,4 @@ Resolve an app client instance by looking up the current network. #### Defined in -[src/types/app-client.ts:361](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L361) +[src/types/app-client.ts:360](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-client.ts#L360) diff --git a/src/types/app-client.spec.ts b/src/types/app-client.spec.ts index a4da7b658..ba797cd2e 100644 --- a/src/types/app-client.spec.ts +++ b/src/types/app-client.spec.ts @@ -1,7 +1,6 @@ import { ABIMethod, ABIStructType, ABIType, ABIValue, getABIMethod } from '@algorandfoundation/algokit-abi' import { getApplicationAddress } from '@algorandfoundation/algokit-common' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' -import * as algosdk from '@algorandfoundation/sdk' import { TransactionSigner } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterEach, beforeAll, beforeEach, describe, expect, test } from 'vitest' diff --git a/src/types/app-client.ts b/src/types/app-client.ts index c4526fc64..1fc6332ad 100644 --- a/src/types/app-client.ts +++ b/src/types/app-client.ts @@ -21,7 +21,6 @@ import { import { SuggestedParams } from '@algorandfoundation/algokit-algod-client' import { Address, ReadableAddress, getAddress, getApplicationAddress, getOptionalAddress } from '@algorandfoundation/algokit-common' import { AddressWithSigner, OnApplicationComplete } from '@algorandfoundation/algokit-transact' -import * as algosdk from '@algorandfoundation/sdk' import { Indexer, ProgramSourceMap, TransactionSigner } from '@algorandfoundation/sdk' import { Buffer } from 'buffer' import { Config } from '../config' diff --git a/src/types/app-factory-and-client.spec.ts b/src/types/app-factory-and-client.spec.ts index 24f6af340..88425a19e 100644 --- a/src/types/app-factory-and-client.spec.ts +++ b/src/types/app-factory-and-client.spec.ts @@ -1,7 +1,6 @@ import { ABIType, ABIValue, Arc56Contract, getABIMethod } from '@algorandfoundation/algokit-abi' import { Address, getApplicationAddress } from '@algorandfoundation/algokit-common' import { OnApplicationComplete, TransactionType } from '@algorandfoundation/algokit-transact' -import * as algosdk from '@algorandfoundation/sdk' import { TransactionSigner } from '@algorandfoundation/sdk' import invariant from 'tiny-invariant' import { afterEach, beforeAll, beforeEach, describe, expect, it, test } from 'vitest' From fed59edade94dd0cb83f4b45106b39e9ef8215f4 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 1 Dec 2025 13:57:58 +1000 Subject: [PATCH 40/43] remove error message prefix --- packages/abi/src/abi-type.ts | 66 ++++++++++++++++++------------------ 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 4efcaed1a..960fa9ecd 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -104,12 +104,12 @@ export abstract class ABIType { if (str.endsWith(']')) { const stringMatches = str.match(STATIC_ARRAY_REGEX) if (!stringMatches || stringMatches.length !== 3) { - throw new Error(`Validation Error: malformed static array string: ${str}`) + throw new Error(`malformed static array string: ${str}`) } const arrayLengthStr = stringMatches[2] const arrayLength = parseInt(arrayLengthStr, 10) if (arrayLength > MAX_LEN) { - throw new Error(`Validation Error: array length exceeds limit ${MAX_LEN}`) + throw new Error(`array length exceeds limit ${MAX_LEN}`) } const childType = ABIType.from(stringMatches[1]) return new ABIArrayStaticType(childType, arrayLength) @@ -118,11 +118,11 @@ export abstract class ABIType { const digitsOnly = (s: string) => [...s].every((c) => '0123456789'.includes(c)) const typeSizeStr = str.slice(4, str.length) if (!digitsOnly(typeSizeStr)) { - throw new Error(`Validation Error: malformed uint string: ${typeSizeStr}`) + throw new Error(`malformed uint string: ${typeSizeStr}`) } const bitSize = parseInt(typeSizeStr, 10) if (bitSize > MAX_LEN) { - throw new Error(`Validation Error: malformed uint string: ${bitSize}`) + throw new Error(`malformed uint string: ${bitSize}`) } return new ABIUintType(bitSize) } @@ -175,7 +175,7 @@ export class ABIUintType extends ABIType { constructor(public readonly bitSize: number) { super() if (bitSize % 8 !== 0 || bitSize < 8 || bitSize > 512) { - throw new Error(`Validation Error: unsupported uint type bitSize: ${bitSize}`) + throw new Error(`unsupported uint type bitSize: ${bitSize}`) } } @@ -233,10 +233,10 @@ export class ABIUfixedType extends ABIType { ) { super() if (bitSize % 8 !== 0 || bitSize < 8 || bitSize > 512) { - throw new Error(`Validation Error: unsupported ufixed type bitSize: ${bitSize}`) + throw new Error(`unsupported ufixed type bitSize: ${bitSize}`) } if (precision > 160 || precision < 1) { - throw new Error(`Validation Error: unsupported ufixed type precision: ${precision}`) + throw new Error(`unsupported ufixed type precision: ${precision}`) } } @@ -307,7 +307,7 @@ export class ABIAddressType extends ABIType { return value.publicKey } - throw new Error(`Encoding Error: Cannot encode value as address: ${value}`) + throw new Error(`Cannot encode value as address: ${value}`) } decode(bytes: Uint8Array): ABIValue { @@ -345,7 +345,7 @@ export class ABIBoolType extends ABIType { decode(bytes: Uint8Array): ABIValue { if (bytes.length !== 1) { - throw new Error(`DecodingError: Expected 1 byte for bool, got ${bytes.length}`) + throw new Error(`Expected 1 byte for bool, got ${bytes.length}`) } return (bytes[0] & 0x80) !== 0 @@ -374,11 +374,11 @@ export class ABIByteType extends ABIType { encode(value: ABIValue): Uint8Array { if (typeof value !== 'number' && typeof value !== 'bigint') { - throw new Error(`Validation Error: Cannot encode value as byte: ${value}`) + throw new Error(`Cannot encode value as byte: ${value}`) } const numberValue = typeof value === 'bigint' ? Number(value) : value if (value < 0 || value > 255) { - throw new Error(`Encoding Error: Byte value must be between 0 and 255, got ${numberValue}`) + throw new Error(`Byte value must be between 0 and 255, got ${numberValue}`) } return new Uint8Array([numberValue]) @@ -386,7 +386,7 @@ export class ABIByteType extends ABIType { decode(bytes: Uint8Array): ABIValue { if (bytes.length !== 1) { - throw new Error(`DecodingError: Expected 1 byte for byte type, got ${bytes.length}`) + throw new Error(`Expected 1 byte for byte type, got ${bytes.length}`) } return bytes[0] @@ -410,12 +410,12 @@ export class ABIStringType extends ABIType { } byteLen(): number { - throw new Error(`Validation Error: Failed to get size, string is a dynamic type`) + throw new Error(`Failed to get size, string is a dynamic type`) } encode(value: ABIValue): Uint8Array { if (typeof value !== 'string' && !(value instanceof Uint8Array)) { - throw new Error(`Encoding Error: Cannot encode value as string: ${value}`) + throw new Error(`Cannot encode value as string: ${value}`) } let encodedBytes: Uint8Array @@ -462,7 +462,7 @@ export class ABITupleType extends ABIType { constructor(public readonly childTypes: ABIType[]) { super() if (childTypes.length > MAX_LEN) { - throw new Error(`Validation Error: tuple has too many child types: ${childTypes.length}`) + throw new Error(`tuple has too many child types: ${childTypes.length}`) } } @@ -510,7 +510,7 @@ export class ABITupleType extends ABIType { const values = Array.from(value) if (this.childTypes.length !== values.length) { - throw new Error('Encoding Error: Mismatch lengths between the values and types') + throw new Error('Mismatch lengths between the values and types') } const heads: Uint8Array[] = [] @@ -548,7 +548,7 @@ export class ABITupleType extends ABIType { if (isDynamicIndex.get(i)) { const headValue = headLength + tailLength if (headValue > 0xffff) { - throw new Error(`Encoding Error: Value ${headValue} cannot fit in u16`) + throw new Error(`Value ${headValue} cannot fit in u16`) } heads[i] = new Uint8Array([(headValue >> 8) & 0xff, headValue & 0xff]) } @@ -602,7 +602,7 @@ export class ABIArrayStaticType extends ABIType { ) { super() if (length < 0 || length > MAX_LEN) { - throw new Error(`Validation Error: invalid static array length: ${length}`) + throw new Error(`invalid static array length: ${length}`) } } @@ -682,7 +682,7 @@ export class ABIArrayDynamicType extends ABIType { } byteLen(): number { - throw new Error(`Validation Error: Failed to get size, dynamic array is a dynamic type`) + throw new Error(`Failed to get size, dynamic array is a dynamic type`) } /** @@ -892,13 +892,13 @@ export class ABIStructType extends ABIType { function compressBools(values: ABIValue[]): number { if (values.length > 8) { - throw new Error(`Encoding Error: Expected no more than 8 bool values, received ${values.length}`) + throw new Error(`Expected no more than 8 bool values, received ${values.length}`) } let result = 0 for (let i = 0; i < values.length; i++) { if (typeof values[i] !== 'boolean') { - throw new Error('Encoding Error: Expected all values to be boolean') + throw new Error('Expected all values to be boolean') } if (values[i]) { result |= 1 << (7 - i) @@ -934,7 +934,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { if (childType.isDynamic()) { if (bytes.length - bytesCursor < LENGTH_ENCODE_BYTE_SIZE) { - throw new Error('DecodingError: Byte array is too short to be decoded') + throw new Error('Byte array is too short to be decoded') } const dynamicIndex = (bytes[bytesCursor] << 8) | bytes[bytesCursor + 1] @@ -942,7 +942,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { if (dynamicSegments.length > 0) { const lastSegment = dynamicSegments[dynamicSegments.length - 1] if (dynamicIndex < lastSegment.left) { - throw new Error('DecodingError: Dynamic index segment miscalculation: left is greater than right index') + throw new Error('Dynamic index segment miscalculation: left is greater than right index') } lastSegment.right = dynamicIndex } @@ -967,7 +967,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { const childTypeSize = childType.byteLen() if (bytesCursor + childTypeSize > bytes.length) { throw new Error( - `DecodingError: Index out of bounds, trying to access bytes[${bytesCursor}..${bytesCursor + childTypeSize}] but slice has length ${bytes.length}`, + `Index out of bounds, trying to access bytes[${bytesCursor}..${bytesCursor + childTypeSize}] but slice has length ${bytes.length}`, ) } valuePartitions.push(bytes.slice(bytesCursor, bytesCursor + childTypeSize)) @@ -976,7 +976,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { } if (abiTypesCursor !== abiTypes.length - 1 && bytesCursor >= bytes.length) { - throw new Error('DecodingError: Input bytes not enough to decode') + throw new Error('Input bytes not enough to decode') } abiTypesCursor += 1 } @@ -985,16 +985,16 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { const lastSegment = dynamicSegments[dynamicSegments.length - 1] lastSegment.right = bytes.length } else if (bytesCursor < bytes.length) { - throw new Error('DecodingError: Input bytes not fully consumed') + throw new Error('Input bytes not fully consumed') } for (let i = 0; i < dynamicSegments.length; i++) { const segment = dynamicSegments[i] if (segment.left > segment.right) { - throw new Error('DecodingError: Dynamic segment should display a [l, r] space with l <= r') + throw new Error('Dynamic segment should display a [l, r] space with l <= r') } if (i !== dynamicSegments.length - 1 && segment.right !== dynamicSegments[i + 1].left) { - throw new Error('DecodingError: Dynamic segments should be consecutive') + throw new Error('Dynamic segments should be consecutive') } } @@ -1011,7 +1011,7 @@ function extractValues(abiTypes: ABIType[], bytes: Uint8Array): Uint8Array[] { for (let i = 0; i < valuePartitions.length; i++) { const partition = valuePartitions[i] if (partition === null) { - throw new Error(`DecodingError: Value partition at index ${i} is None`) + throw new Error(`Value partition at index ${i} is None`) } result.push(partition) } @@ -1025,13 +1025,13 @@ export function parseTupleContent(content: string): string[] { } if (content.startsWith(',')) { - throw new Error('Validation Error: the content should not start with comma') + throw new Error('the content should not start with comma') } if (content.endsWith(',')) { - throw new Error('Validation Error: the content should not end with comma') + throw new Error('the content should not end with comma') } if (content.includes(',,')) { - throw new Error('Validation Error: the content should not have consecutive commas') + throw new Error('the content should not have consecutive commas') } const tupleStrings: string[] = [] @@ -1056,7 +1056,7 @@ export function parseTupleContent(content: string): string[] { } if (depth !== 0) { - throw new Error('Validation Error: the content has mismatched parentheses') + throw new Error('the content has mismatched parentheses') } return tupleStrings From 651847154120fc4fbfc30429e7d5a98ed21be5ad Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 1 Dec 2025 13:59:17 +1000 Subject: [PATCH 41/43] revert names --- src/types/app-spec.ts | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/types/app-spec.ts b/src/types/app-spec.ts index 058ddc2b5..e5702001d 100644 --- a/src/types/app-spec.ts +++ b/src/types/app-spec.ts @@ -164,7 +164,7 @@ export interface AppSpec { /** The TEAL source */ source: AppSources /** The ABI-0004 contract definition see https://github.com/algorandfoundation/ARCs/blob/main/ARCs/arc-0004.md */ - contract: ContractDefinition + contract: ABIContractParams /** The values that make up the local and global state */ schema: SchemaSpec /** The rolled-up schema allocation values for local and global state */ @@ -173,21 +173,22 @@ export interface AppSpec { bare_call_config: CallConfig } -interface ContractDefinition { +interface ABIContractParams { name: string desc?: string - networks?: ContractNetworks + networks?: ABIContractNetworks methods: ABIMethodParams[] events?: ARC28Event[] } -interface ContractNetworks { - [network: string]: ContractNetworkInfo +interface ABIContractNetworks { + [network: string]: ABIContractNetworkInfo } -interface ContractNetworkInfo { +interface ABIContractNetworkInfo { appID: number } + interface ABIMethodParams { name: string desc?: string From 75a687f8bf54c2f2e5537f256b4036452363af63 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 1 Dec 2025 14:02:35 +1000 Subject: [PATCH 42/43] doc gen --- .../code/interfaces/types_app_spec.AppSources.md | 4 ++-- docs/code/interfaces/types_app_spec.AppSpec.md | 2 +- .../code/interfaces/types_app_spec.CallConfig.md | 10 +++++----- .../types_app_spec.DeclaredSchemaValueSpec.md | 8 ++++---- docs/code/interfaces/types_app_spec.Hint.md | 8 ++++---- .../types_app_spec.ReservedSchemaValueSpec.md | 6 +++--- docs/code/interfaces/types_app_spec.Schema.md | 4 ++-- .../code/interfaces/types_app_spec.SchemaSpec.md | 4 ++-- .../interfaces/types_app_spec.StateSchemaSpec.md | 4 ++-- docs/code/interfaces/types_app_spec.Struct.md | 4 ++-- docs/code/modules/types_app_spec.md | 16 ++++++++-------- 11 files changed, 35 insertions(+), 35 deletions(-) diff --git a/docs/code/interfaces/types_app_spec.AppSources.md b/docs/code/interfaces/types_app_spec.AppSources.md index 37d56414c..68c8dc8bf 100644 --- a/docs/code/interfaces/types_app_spec.AppSources.md +++ b/docs/code/interfaces/types_app_spec.AppSources.md @@ -23,7 +23,7 @@ The TEAL source of the approval program #### Defined in -[src/types/app-spec.ts:219](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L219) +[src/types/app-spec.ts:220](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L220) ___ @@ -35,4 +35,4 @@ The TEAL source of the clear program #### Defined in -[src/types/app-spec.ts:221](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L221) +[src/types/app-spec.ts:222](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L222) diff --git a/docs/code/interfaces/types_app_spec.AppSpec.md b/docs/code/interfaces/types_app_spec.AppSpec.md index 47d710fc3..a589cbaf8 100644 --- a/docs/code/interfaces/types_app_spec.AppSpec.md +++ b/docs/code/interfaces/types_app_spec.AppSpec.md @@ -33,7 +33,7 @@ ___ ### contract -• **contract**: `ContractDefinition` +• **contract**: `ABIContractParams` The ABI-0004 contract definition see https://github.com/algorandfoundation/ARCs/blob/main/ARCs/arc-0004.md diff --git a/docs/code/interfaces/types_app_spec.CallConfig.md b/docs/code/interfaces/types_app_spec.CallConfig.md index 2c8e00a89..3e2468405 100644 --- a/docs/code/interfaces/types_app_spec.CallConfig.md +++ b/docs/code/interfaces/types_app_spec.CallConfig.md @@ -26,7 +26,7 @@ Close out call config #### Defined in -[src/types/app-spec.ts:239](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L239) +[src/types/app-spec.ts:240](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L240) ___ @@ -38,7 +38,7 @@ Delete call config #### Defined in -[src/types/app-spec.ts:243](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L243) +[src/types/app-spec.ts:244](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L244) ___ @@ -50,7 +50,7 @@ NoOp call config #### Defined in -[src/types/app-spec.ts:235](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L235) +[src/types/app-spec.ts:236](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L236) ___ @@ -62,7 +62,7 @@ Opt-in call config #### Defined in -[src/types/app-spec.ts:237](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L237) +[src/types/app-spec.ts:238](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L238) ___ @@ -74,4 +74,4 @@ Update call config #### Defined in -[src/types/app-spec.ts:241](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L241) +[src/types/app-spec.ts:242](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L242) diff --git a/docs/code/interfaces/types_app_spec.DeclaredSchemaValueSpec.md b/docs/code/interfaces/types_app_spec.DeclaredSchemaValueSpec.md index be10d25a1..381660d59 100644 --- a/docs/code/interfaces/types_app_spec.DeclaredSchemaValueSpec.md +++ b/docs/code/interfaces/types_app_spec.DeclaredSchemaValueSpec.md @@ -25,7 +25,7 @@ A description of the variable #### Defined in -[src/types/app-spec.ts:324](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L324) +[src/types/app-spec.ts:325](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L325) ___ @@ -37,7 +37,7 @@ The name of the key #### Defined in -[src/types/app-spec.ts:322](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L322) +[src/types/app-spec.ts:323](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L323) ___ @@ -49,7 +49,7 @@ Whether or not the value is set statically (at create time only) or dynamically #### Defined in -[src/types/app-spec.ts:326](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L326) +[src/types/app-spec.ts:327](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L327) ___ @@ -61,4 +61,4 @@ The type of value #### Defined in -[src/types/app-spec.ts:320](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L320) +[src/types/app-spec.ts:321](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L321) diff --git a/docs/code/interfaces/types_app_spec.Hint.md b/docs/code/interfaces/types_app_spec.Hint.md index d01cd38e9..30cfa67b5 100644 --- a/docs/code/interfaces/types_app_spec.Hint.md +++ b/docs/code/interfaces/types_app_spec.Hint.md @@ -23,7 +23,7 @@ Hint information for a given method call to allow client generation #### Defined in -[src/types/app-spec.ts:252](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L252) +[src/types/app-spec.ts:253](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L253) ___ @@ -33,7 +33,7 @@ ___ #### Defined in -[src/types/app-spec.ts:251](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L251) +[src/types/app-spec.ts:252](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L252) ___ @@ -43,7 +43,7 @@ ___ #### Defined in -[src/types/app-spec.ts:250](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L250) +[src/types/app-spec.ts:251](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L251) ___ @@ -55,4 +55,4 @@ Any user-defined struct/tuple types used in the method call, keyed by parameter #### Defined in -[src/types/app-spec.ts:249](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L249) +[src/types/app-spec.ts:250](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L250) diff --git a/docs/code/interfaces/types_app_spec.ReservedSchemaValueSpec.md b/docs/code/interfaces/types_app_spec.ReservedSchemaValueSpec.md index 9f58d3838..d588bfbc9 100644 --- a/docs/code/interfaces/types_app_spec.ReservedSchemaValueSpec.md +++ b/docs/code/interfaces/types_app_spec.ReservedSchemaValueSpec.md @@ -24,7 +24,7 @@ The description of the reserved storage space #### Defined in -[src/types/app-spec.ts:334](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L334) +[src/types/app-spec.ts:335](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L335) ___ @@ -36,7 +36,7 @@ The maximum number of slots to reserve #### Defined in -[src/types/app-spec.ts:336](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L336) +[src/types/app-spec.ts:337](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L337) ___ @@ -48,4 +48,4 @@ The type of value #### Defined in -[src/types/app-spec.ts:332](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L332) +[src/types/app-spec.ts:333](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L333) diff --git a/docs/code/interfaces/types_app_spec.Schema.md b/docs/code/interfaces/types_app_spec.Schema.md index 35a5134a8..8d39653d0 100644 --- a/docs/code/interfaces/types_app_spec.Schema.md +++ b/docs/code/interfaces/types_app_spec.Schema.md @@ -23,7 +23,7 @@ Declared storage schema #### Defined in -[src/types/app-spec.ts:350](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L350) +[src/types/app-spec.ts:351](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L351) ___ @@ -35,4 +35,4 @@ Reserved storage schema #### Defined in -[src/types/app-spec.ts:352](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L352) +[src/types/app-spec.ts:353](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L353) diff --git a/docs/code/interfaces/types_app_spec.SchemaSpec.md b/docs/code/interfaces/types_app_spec.SchemaSpec.md index a42081f54..f2a1bf1d7 100644 --- a/docs/code/interfaces/types_app_spec.SchemaSpec.md +++ b/docs/code/interfaces/types_app_spec.SchemaSpec.md @@ -23,7 +23,7 @@ The global storage schema #### Defined in -[src/types/app-spec.ts:344](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L344) +[src/types/app-spec.ts:345](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L345) ___ @@ -35,4 +35,4 @@ The local storage schema #### Defined in -[src/types/app-spec.ts:342](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L342) +[src/types/app-spec.ts:343](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L343) diff --git a/docs/code/interfaces/types_app_spec.StateSchemaSpec.md b/docs/code/interfaces/types_app_spec.StateSchemaSpec.md index becbc684a..0b775aafb 100644 --- a/docs/code/interfaces/types_app_spec.StateSchemaSpec.md +++ b/docs/code/interfaces/types_app_spec.StateSchemaSpec.md @@ -23,7 +23,7 @@ Global storage spec #### Defined in -[src/types/app-spec.ts:358](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L358) +[src/types/app-spec.ts:359](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L359) ___ @@ -35,4 +35,4 @@ Local storage spec #### Defined in -[src/types/app-spec.ts:360](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L360) +[src/types/app-spec.ts:361](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L361) diff --git a/docs/code/interfaces/types_app_spec.Struct.md b/docs/code/interfaces/types_app_spec.Struct.md index 0d5a973cb..d37eb1c3a 100644 --- a/docs/code/interfaces/types_app_spec.Struct.md +++ b/docs/code/interfaces/types_app_spec.Struct.md @@ -23,7 +23,7 @@ The elements (in order) that make up the struct/tuple #### Defined in -[src/types/app-spec.ts:269](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L269) +[src/types/app-spec.ts:270](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L270) ___ @@ -35,4 +35,4 @@ The name of the type #### Defined in -[src/types/app-spec.ts:267](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L267) +[src/types/app-spec.ts:268](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L268) diff --git a/docs/code/modules/types_app_spec.md b/docs/code/modules/types_app_spec.md index 154a39385..9412d098f 100644 --- a/docs/code/modules/types_app_spec.md +++ b/docs/code/modules/types_app_spec.md @@ -42,7 +42,7 @@ The string name of an ABI type #### Defined in -[src/types/app-spec.ts:259](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L259) +[src/types/app-spec.ts:260](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L260) ___ @@ -54,7 +54,7 @@ AVM data type #### Defined in -[src/types/app-spec.ts:315](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L315) +[src/types/app-spec.ts:316](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L316) ___ @@ -70,7 +70,7 @@ The various call configs: #### Defined in -[src/types/app-spec.ts:230](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L230) +[src/types/app-spec.ts:231](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L231) ___ @@ -82,7 +82,7 @@ Defines a strategy for obtaining a default value for a given ABI arg. #### Defined in -[src/types/app-spec.ts:275](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L275) +[src/types/app-spec.ts:276](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L276) ___ @@ -94,7 +94,7 @@ The name of a field #### Defined in -[src/types/app-spec.ts:256](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L256) +[src/types/app-spec.ts:257](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L257) ___ @@ -106,7 +106,7 @@ A lookup of encoded method call spec to hint #### Defined in -[src/types/app-spec.ts:214](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L214) +[src/types/app-spec.ts:215](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L215) ___ @@ -125,7 +125,7 @@ Schema spec summary for global or local storage #### Defined in -[src/types/app-spec.ts:364](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L364) +[src/types/app-spec.ts:365](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L365) ___ @@ -137,7 +137,7 @@ The elements of the struct/tuple: `FieldName`, `ABIType` #### Defined in -[src/types/app-spec.ts:262](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L262) +[src/types/app-spec.ts:263](https://github.com/algorandfoundation/algokit-utils-ts/blob/main/src/types/app-spec.ts#L263) ## Functions From c0119b75502205931cbb56d3b68fb16c067c4576 Mon Sep 17 00:00:00 2001 From: Hoang Dinh Date: Mon, 1 Dec 2025 16:28:01 +1000 Subject: [PATCH 43/43] Fix error messages --- packages/abi/src/abi-type.ts | 38 ++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/packages/abi/src/abi-type.ts b/packages/abi/src/abi-type.ts index 960fa9ecd..824a15699 100644 --- a/packages/abi/src/abi-type.ts +++ b/packages/abi/src/abi-type.ts @@ -104,12 +104,12 @@ export abstract class ABIType { if (str.endsWith(']')) { const stringMatches = str.match(STATIC_ARRAY_REGEX) if (!stringMatches || stringMatches.length !== 3) { - throw new Error(`malformed static array string: ${str}`) + throw new Error(`Malformed static array string: ${str}`) } const arrayLengthStr = stringMatches[2] const arrayLength = parseInt(arrayLengthStr, 10) if (arrayLength > MAX_LEN) { - throw new Error(`array length exceeds limit ${MAX_LEN}`) + throw new Error(`Array length exceeds limit ${MAX_LEN}`) } const childType = ABIType.from(stringMatches[1]) return new ABIArrayStaticType(childType, arrayLength) @@ -118,11 +118,11 @@ export abstract class ABIType { const digitsOnly = (s: string) => [...s].every((c) => '0123456789'.includes(c)) const typeSizeStr = str.slice(4, str.length) if (!digitsOnly(typeSizeStr)) { - throw new Error(`malformed uint string: ${typeSizeStr}`) + throw new Error(`Malformed uint string: ${typeSizeStr}`) } const bitSize = parseInt(typeSizeStr, 10) if (bitSize > MAX_LEN) { - throw new Error(`malformed uint string: ${bitSize}`) + throw new Error(`Malformed uint string: ${bitSize}`) } return new ABIUintType(bitSize) } @@ -132,7 +132,7 @@ export abstract class ABIType { if (str.startsWith('ufixed')) { const stringMatches = str.match(UFIXED_REGEX) if (!stringMatches || stringMatches.length !== 3) { - throw new Error(`malformed ufixed type: ${str}`) + throw new Error(`Malformed ufixed type: ${str}`) } const bitSize = parseInt(stringMatches[1], 10) const precision = parseInt(stringMatches[2], 10) @@ -156,7 +156,7 @@ export abstract class ABIType { } return new ABITupleType(childTypes) } - throw new Error(`cannot convert a string ${str} to an ABI type`) + throw new Error(`Cannot convert a string ${str} to an ABI type`) } } @@ -175,7 +175,7 @@ export class ABIUintType extends ABIType { constructor(public readonly bitSize: number) { super() if (bitSize % 8 !== 0 || bitSize < 8 || bitSize > 512) { - throw new Error(`unsupported uint type bitSize: ${bitSize}`) + throw new Error(`Unsupported uint type bitSize: ${bitSize}`) } } @@ -211,7 +211,7 @@ export class ABIUintType extends ABIType { decode(bytes: Uint8Array): ABIValue { if (bytes.length !== this.bitSize / 8) { - throw new Error(`byte string must correspond to a ${this.name}`) + throw new Error(`Byte string must correspond to a ${this.name}`) } const value = bytesToBigInt(bytes) return this.bitSize < 53 ? Number(value) : value @@ -233,10 +233,10 @@ export class ABIUfixedType extends ABIType { ) { super() if (bitSize % 8 !== 0 || bitSize < 8 || bitSize > 512) { - throw new Error(`unsupported ufixed type bitSize: ${bitSize}`) + throw new Error(`Unsupported ufixed type bitSize: ${bitSize}`) } if (precision > 160 || precision < 1) { - throw new Error(`unsupported ufixed type precision: ${precision}`) + throw new Error(`Unsupported ufixed type precision: ${precision}`) } } @@ -271,7 +271,7 @@ export class ABIUfixedType extends ABIType { decode(bytes: Uint8Array): ABIValue { if (bytes.length !== this.bitSize / 8) { - throw new Error(`byte string must correspond to a ${this.name}`) + throw new Error(`Byte string must correspond to a ${this.name}`) } const value = bytesToBigInt(bytes) return this.bitSize < 53 ? Number(value) : value @@ -434,14 +434,14 @@ export class ABIStringType extends ABIType { decode(bytes: Uint8Array): ABIValue { if (bytes.length < LENGTH_ENCODE_BYTE_SIZE) { throw new Error( - `byte string is too short to be decoded. Actual length is ${bytes.length}, but expected at least ${LENGTH_ENCODE_BYTE_SIZE}`, + `Byte string is too short to be decoded. Actual length is ${bytes.length}, but expected at least ${LENGTH_ENCODE_BYTE_SIZE}`, ) } const view = new DataView(bytes.buffer, bytes.byteOffset, LENGTH_ENCODE_BYTE_SIZE) const byteLength = view.getUint16(0) const byteValue = bytes.slice(LENGTH_ENCODE_BYTE_SIZE, bytes.length) if (byteLength !== byteValue.length) { - throw new Error(`string length bytes do not match the actual length of string. Expected ${byteLength}, got ${byteValue.length}`) + throw new Error(`String length bytes do not match the actual length of string. Expected ${byteLength}, got ${byteValue.length}`) } return new TextDecoder('utf-8').decode(byteValue) } @@ -462,7 +462,7 @@ export class ABITupleType extends ABIType { constructor(public readonly childTypes: ABIType[]) { super() if (childTypes.length > MAX_LEN) { - throw new Error(`tuple has too many child types: ${childTypes.length}`) + throw new Error(`Tuple has too many child types: ${childTypes.length}`) } } @@ -602,7 +602,7 @@ export class ABIArrayStaticType extends ABIType { ) { super() if (length < 0 || length > MAX_LEN) { - throw new Error(`invalid static array length: ${length}`) + throw new Error(`Invalid static array length: ${length}`) } } @@ -1025,13 +1025,13 @@ export function parseTupleContent(content: string): string[] { } if (content.startsWith(',')) { - throw new Error('the content should not start with comma') + throw new Error('The content should not start with comma') } if (content.endsWith(',')) { - throw new Error('the content should not end with comma') + throw new Error('The content should not end with comma') } if (content.includes(',,')) { - throw new Error('the content should not have consecutive commas') + throw new Error('The content should not have consecutive commas') } const tupleStrings: string[] = [] @@ -1056,7 +1056,7 @@ export function parseTupleContent(content: string): string[] { } if (depth !== 0) { - throw new Error('the content has mismatched parentheses') + throw new Error('The content has mismatched parentheses') } return tupleStrings