Class LogicSigAccount

Represents an account that can sign with a LogicSig program.

Implements

Constructors

  • Create a new LogicSigAccount. By default this will create an escrow LogicSig account. Call sign or signMultisig on the newly created LogicSigAccount to make it a delegated account.

    Parameters

    • program: Uint8Array

      The compiled TEAL program which contains the logic for this LogicSig.

    • Optional args: null | Uint8Array[]

      An optional array of arguments for the program.

    Returns LogicSigAccount

Properties

lsig: LogicSig
sigkey?: Uint8Array
encodingSchema: NamedMapSchema = ...

Methods

  • Get the address of this LogicSigAccount.

    If the LogicSig is delegated to another account, this will return the address of that account.

    If the LogicSig is not delegated to another account, this will return an escrow address that is the hash of the LogicSig's program code.

    Returns Address

  • Parameters

    • secretKey: Uint8Array

      The secret key of one of the members of the delegating multisig account.

    Returns void

    Deprecated

    Use appendToMultisigWithSigner

    Adds an additional signature from a member of the delegating multisig account.

  • Get the encoding Schema for this object, used to prepare the encoding data for msgpack and JSON.

    Returns Schema

  • Check if this LogicSigAccount has been delegated to another account with a signature.

    Note this function only checks for the presence of a delegation signature. To verify the delegation signature, use verify.

    Returns boolean

  • Parameters

    • secretKey: Uint8Array

      The secret key of the delegating account.

    Returns void

    Deprecated

    Use signWithSigner instead

    Turns this LogicSigAccount into a delegated LogicSig. This type of LogicSig has the authority to sign transactions on behalf of another account, called the delegating account. If the delegating account is a multisig account, use signMultisig instead.

  • Parameters

    • msig: MultisigMetadata

      The multisig delegating account

    • secretKey: Uint8Array

      The secret key of one of the members of the delegating multisig account. Use appendToMultisig to add additional signatures from other members.

    Returns void

    Deprecated

    Use signMultisigWithSigner instead

    Turns this LogicSigAccount into a delegated LogicSig. This type of LogicSig has the authority to sign transactions on behalf of another account, called the delegating account. Use this function if the delegating account is a multisig account.

  • Turns this LogicSigAccount into a delegated LogicSig, signed by the given signer. If the delegating account is a multisig account, use signMultisigWithSigner instead.

    Parameters

    Returns Promise<void>

  • Encode this object into msgpack.

    Returns Uint8Array

  • Extract the encoding data for this object. This data, after being prepared by the encoding Schema, can be encoded to msgpack or JSON.

    Returns Map<string, unknown>

  • Returns boolean

    true if and only if the LogicSig program and signatures are valid.

    Deprecated

    This function does not perform full verification and should not be fully trusted on its own. For example, it does not evaluate programs and does not have the ability to validate PQ signatures.

    Verifies this LogicSig's program and signatures.

Generated using TypeDoc