import { BbsPlusSigParams } from 'crypto-wasm-new'; import { ISignatureParams, MessageStructure } from '../types'; /** * `BBS+` Signature parameters. */ export declare abstract class BBSPlusSignatureParams implements ISignatureParams { label?: Uint8Array; value: BbsPlusSigParams; constructor(params: BbsPlusSigParams, label?: Uint8Array); abstract toBytes(): Uint8Array; abstract isValid(): boolean; abstract adapt(newMsgCount: number): this; /** * Number of messages that these params support and can be signed. If less or more messages are to be signed, use * `adapt` */ supportedMessageCount(): number; /** * Is message index valid as per the params * @param index */ isValidIndex(index: number): boolean; /** * Get params, i.e. generator from `this.value.h` for certain indices * @param indices */ getParamsForIndices(indices: number[]): Uint8Array[]; toJSON(): string; } /** * `BBS+` Signature parameters in `G1`. */ export declare class BBSPlusSignatureParamsG1 extends BBSPlusSignatureParams { static generate(numMessages: number, label?: Uint8Array): BBSPlusSignatureParamsG1; static generateAsBytes(numMessages: number, label?: Uint8Array): Uint8Array; toBytes(): Uint8Array; isValid(): boolean; static valueFromBytes(bytes: Uint8Array): BbsPlusSigParams; /** * Transform current signature params to sign a different number of messages. Needs the `label` field to be present * @param newMsgCount */ adapt(newMsgCount: number): this; /** * Commit to given messages and return the pair [blinding, commitment] * @param messageToCommit * @param encodeMessages * @param blinding - If not provided, a random blinding is generated */ commitToMessages(messageToCommit: Map, encodeMessages: boolean, blinding?: Uint8Array): [Uint8Array, Uint8Array]; /** * Commit to given messages and return the pair [blinding, commitment] * @param messageToCommit * @param encodeMessages * @param blinding - If not provided, a random blinding is generated */ commitToMessagesConstantTime(messageToCommit: Map, encodeMessages: boolean, blinding?: Uint8Array): [Uint8Array, Uint8Array]; /** * Gives `BBSPlusSignatureParamsG1` that can sign `msgCount` number of messages. * @param msgCount * @param labelOrParams */ static getSigParamsOfRequiredSize(msgCount: number, labelOrParams: Uint8Array | BBSPlusSignatureParamsG1): BBSPlusSignatureParamsG1; static getSigParamsForMsgStructure(msgStructure: MessageStructure, labelOrParams: Uint8Array | BBSPlusSignatureParamsG1): BBSPlusSignatureParamsG1; } /** * `BBS+` Signature parameters in `G2`. */ export declare class BBSPlusSignatureParamsG2 extends BBSPlusSignatureParams { static generate(numMessages: number, label?: Uint8Array): BBSPlusSignatureParamsG2; static generateAsBytes(numMessages: number, label?: Uint8Array): Uint8Array; isValid(): boolean; toBytes(): Uint8Array; static valueFromBytes(bytes: Uint8Array): BbsPlusSigParams; /** * Transform current signature params to sign a different number of messages. Needs the `label` field to be present * @param newMsgCount */ adapt(newMsgCount: number): this; } //# sourceMappingURL=params.d.ts.map