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