import { Encoder } from './encoder'; import { WitnessEqualityMetaStatement } from './composite-proof/statement'; import { BBSPlusBlindSignatureRequest, BBSPlusSignatureParamsG1 } from './bbs-plus'; import { BBSBlindSignatureRequest, BBSSignatureParams } from './bbs'; import { PSBlindSignatureRequest, PSSignatureParams } from './ps'; import { ISignatureParams, MessageStructure } from './types'; import { BBDT16BlindMacRequest, BBDT16MacParams } from './bbdt16-mac'; export declare function flattenMessageStructure(msgStructure: MessageStructure): object; export declare function getAdaptedSignatureParamsForMessages(params: Params, msgStructure: MessageStructure): Params; /** * Encodes revealed messages producing an object with names as keys and encoded messages as values and a map with * indices as keys and encoded messages as values. * Also returns the total amount of names produced by flattening a msg structure. * @param revealedMessages - The messages known to the signer * @param blindedMessageCount * @param msgStructure * @param encoder */ export declare function encodeRevealedMessageObject(revealedMessages: object, blindedMessageCount: number, msgStructure: MessageStructure, encoder: Encoder): { encodedByName: { [key: string]: Uint8Array; }; encodedByIndex: Map; total: number; }; /** * Gives `SignatureParams` that can sign `msgCount` number of messages. * @param SignatureParamsClass * @param msgCount * @param labelOrParams */ export declare function getSigParamsOfRequiredSize(SignatureParamsClass: { new (...args: any[]): S; generate(msgCount: number, labelOrParams?: Uint8Array): S; }, msgCount: number, labelOrParams: Uint8Array | S): S; /** * Given the messages as a JS object and the names (use "." for nested property names) of the messages to reveal, returns * the encoded messages to reveal and hide as separate maps with the key being the index of the message when the object is * flattened. * @param messages * @param revealedMsgNames * @param encoder * @param useConstantTimeEncoding */ export declare function getRevealedAndUnrevealed(messages: object, revealedMsgNames: Set, encoder: Encoder, useConstantTimeEncoding?: boolean): [Map, Map, object]; /** * Used by the verifier to encode the revealed messages given by the prover. * @param revealedMsgsRaw - Revealed messages given by the prover. * @param msgStructure - Message structure, i.e. the structure of JS object with key names but values redacted. * @param encoder */ export declare function encodeRevealedMsgs(revealedMsgsRaw: object, msgStructure: MessageStructure, encoder: Encoder): Map; /** * Check if the given structure is compatible with the given messages object. * @param messages * @param msgStructure */ export declare function isValidMsgStructure(messages: object, msgStructure: MessageStructure): boolean; /** * Flattens the object `msgStructure` and returns the indices of names given in `msgNames` * @param msgNames * @param msgStructure * @returns Returns in same order as given names in `msgNames` */ export declare function getIndicesForMsgNames(msgNames: string[], msgStructure: MessageStructure): number[]; /** * Takes an equality of messages across statements and returns the `MetaStatement` to be used in the proof. * @param equality - Map with key as the statement index and value as the message names of that statement * that are to be proved equal and the message structure. */ export declare function createWitnessEqualityMetaStatement(equality: Map): WitnessEqualityMetaStatement; /** * Get the `BBS` statement to be used in composite proof for the blind signature request * @param request * @param sigParams */ export declare function getBBSStatementForBlindSigRequest(request: BBSBlindSignatureRequest, sigParams: BBSSignatureParams): Uint8Array; /** * Get the `BBS` witness to be used in composite proof for the blind signature request * @param messages */ export declare function getBBSWitnessForBlindSigRequest(messages: Map): Uint8Array; /** * Get the `BBS+` statement to be used in composite proof for the blind signature request * @param request * @param sigParams */ export declare function getBBSPlusStatementForBlindSigRequest(request: BBSPlusBlindSignatureRequest, sigParams: BBSPlusSignatureParamsG1): Uint8Array; /** * Get the `BBS+` witness to be used in composite proof for the blind signature request * @param messages * @param blinding */ export declare function getBBSPlusWitnessForBlindSigRequest(messages: Map, blinding: Uint8Array): Uint8Array; /** * Get the `PS` statements to be used in composite proof for the blind signature request * @param request * @param sigParams * @param h */ export declare function getPSStatementsForBlindSigRequest(request: PSBlindSignatureRequest, sigParams: PSSignatureParams, h: Uint8Array): Uint8Array[]; /** * Get the `PS witnesses to be used in composite proof for the blind signature request * @param messages * @param blinding * @param blindings */ export declare function getPSWitnessesForBlindSigRequest(messages: Map, blinding: Uint8Array, blindings: Map): Uint8Array[]; /** * Get the `BBDT16` statement to be used in composite proof for the blind signature request * @param request * @param macParams */ export declare function getBBDT16StatementForBlindMacRequest(request: BBDT16BlindMacRequest, macParams: BBDT16MacParams): Uint8Array; /** * Get the `BBDT16` witness to be used in composite proof for the blind signature request * @param messages * @param blinding */ export declare function getBBDT16WitnessForBlindMacRequest(messages: Map, blinding: Uint8Array): Uint8Array; export declare function getBlindedIndicesAndRevealedMessages(messagesToBlind: Map, encodeMessages: boolean, revealedMessages?: Map): [number[], Map | undefined]; //# sourceMappingURL=sign-verify-js-objs.d.ts.map