Skip to main content

Class: MultisigAggregatedSignature

Aggregated signature from members of a multisig committee.

BCS

The BCS serialized form for this type is defined by the following ABNF:

multisig-aggregated-signature = (vector multisig-member-signature)
u16 ; bitmap
multisig-committee

There is also a legacy encoding for this type defined as:

legacy-multisig-aggregated-signature = (vector multisig-member-signature)
roaring-bitmap ; bitmap
legacy-multisig-committee
roaring-bitmap = bytes ; where the contents of the bytes are valid
; according to the serialized spec for
; roaring bitmaps

See https://github.com/RoaringBitmap/RoaringFormatSpec for the specification for the serialized format of RoaringBitmaps.

Extends

  • UniffiAbstractObject

Implements

Constructors

Constructor

new MultisigAggregatedSignature(signatures, committee): MultisigAggregatedSignature;

Construct a MultisigAggregatedSignature from a list of UserSignatures and a MultisigCommittee.

This:

  • validates committee via MultisigCommittee::validate;
  • converts each UserSignature into a MultisigMemberSignature;
  • derives the bitmap by locating each signature's public key in the committee, rejecting duplicates and signatures from non-members;
  • rejects empty signature lists and lists longer than the committee.

The caller must provide signatures in the same order as their corresponding members in committee: for committee [pk1, pk2, pk3, pk4, pk5], [sig1, sig2, sig5] is valid but [sig2, sig1, sig5] is not.

Parameters

signatures

UserSignatureLike[]

committee

MultisigCommitteeLike

Returns

MultisigAggregatedSignature

Overrides

UniffiAbstractObject.constructor

Properties

[destructorGuardSymbol]

readonly [destructorGuardSymbol]: UniffiGcObject;

[pointerLiteralSymbol]

readonly [pointerLiteralSymbol]: bigint;

[uniffiTypeNameSymbol]

readonly [uniffiTypeNameSymbol]: "MultisigAggregatedSignature" = "MultisigAggregatedSignature";

Methods

bitmap()

bitmap(): number;

The bitmap that indicates which committee members provided their signature.

Returns

number

Implementation of

MultisigAggregatedSignatureLike.bitmap


committee()

committee(): MultisigCommitteeLike;

Returns

MultisigCommitteeLike

Implementation of

MultisigAggregatedSignatureLike.committee


equals()

equals(other): boolean;

Parameters

other

MultisigAggregatedSignature

Returns

boolean


signatures()

signatures(): MultisigMemberSignatureLike[];

The list of signatures from committee members

Returns

MultisigMemberSignatureLike[]

Implementation of

MultisigAggregatedSignatureLike.signatures


toDebugString()

toDebugString(): string;

Returns

string


toString()

toString(): string;

Returns a string representation of an object.

Returns

string


uniffiDestroy()

uniffiDestroy(): void;

Explicitly tell Rust to destroy the native peer that backs this object.

Once this method has been called, any following method calls will throw an error.

Can be called more than once.

Returns

void

Overrides

UniffiAbstractObject.uniffiDestroy

uniffiUse()

uniffiUse<T>(block): T;

A convenience method to use this object, then destroy it after its use.

Type Parameters

T

T

Parameters

block

(obj) => T

Returns

T

Inherited from

UniffiAbstractObject.uniffiUse

instanceOf()

static instanceOf(obj_): obj_ is MultisigAggregatedSignature;

Parameters

obj_

any

Returns

obj_ is MultisigAggregatedSignature