Type alias DelegatedLsigSigner

DelegatedLsigSigner: ((lsig, msig?) => Promise<{
    address: Address;
} & ({
    sig: Uint8Array;
} | {
    lmsig: EncodedMultisig;
} | {
    pqsig: EncodedPQSig;
})>)

This type represents a function which can sign a LogicSig for delegation.

Type declaration

    • (lsig, msig?): Promise<{
          address: Address;
      } & ({
          sig: Uint8Array;
      } | {
          lmsig: EncodedMultisig;
      } | {
          pqsig: EncodedPQSig;
      })>
    • Parameters

      • lsig: LogicSig

        The logic signature that is being signed for delegation

      • Optional msig: MultisigMetadata

        Optional multisig account that should be set when a public key is signing as a subsigner of a multisig

      Returns Promise<{
          address: Address;
      } & ({
          sig: Uint8Array;
      } | {
          lmsig: EncodedMultisig;
      } | {
          pqsig: EncodedPQSig;
      })>

Remarks

Exactly one of sig, lmsig and pqsig is returned, according to the kind of key the signer holds and whether msig was supplied:

  • sig - an ed25519 signature from a single delegating account
  • lmsig - a multisig containing this signer's subsignature, returned when msig is supplied
  • pqsig - a post-quantum signature from a single delegating account

Returns

A promise which resolves to the signature and the address that produced it. When msig is omitted this is the delegating account; when msig is supplied it is the individual subsigner rather than the multisig. Either way it is an authorizing address, which is not necessarily the address the signer sends transactions from.

Generated using TypeDoc