Options
All
  • Public
  • Public/Protected
  • All
Menu

Class LogicSigAccount

Represents an account that can sign with a LogicSig program.

Hierarchy

  • LogicSigAccount

Index

Constructors

  • new LogicSigAccount(program: Uint8Array, args?: (Uint8Array | Buffer)[]): LogicSigAccount
  • 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: (Uint8Array | Buffer)[]

      An optional array of arguments for the program.

    Returns LogicSigAccount

Properties

lsig: LogicSig
sigkey?: Uint8Array

Methods

  • address(): string
  • 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 string

  • appendToMultisig(secretKey: Uint8Array): void
  • Adds an additional signature from a member of the delegating multisig account.

    Parameters

    • secretKey: Uint8Array

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

    Returns void

  • isDelegated(): boolean
  • 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

  • sign(secretKey: Uint8Array): void
  • 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

    • secretKey: Uint8Array

      The secret key of the delegating account.

    Returns void

  • 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.

    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

  • toByte(): Uint8Array
  • Encode this object into msgpack.

    Returns Uint8Array

  • verify(): boolean
  • Verifies this LogicSig's program and signatures.

    Returns boolean

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

  • Decode a msgpack object into a LogicSigAccount.

    Parameters

    • encoded: ArrayLike<any>

      The encoded LogicSigAccount.

    Returns LogicSigAccount

Generated using TypeDoc