import type { AuthenticationProgramStateError, AuthenticationProgramStateMinimum, AuthenticationProgramStateResourceLimitsBCHCHIPs, AuthenticationProgramStateSignatureAnalysis, AuthenticationProgramStateStack, Operation, Ripemd160, Secp256k1, Sha1, Sha256 } from '../../../../lib.js'; import type { AuthenticationProgramStateBCHCHIPs } from './bch-chips-types.js'; /** * Given a message length, compute and return the number of hash digest * iterations required. (See `CHIP-2021-05-vm-limits`) */ export declare const hashDigestIterations: (messageLength: number) => number; /** * Given a program state, increment the hash digest iteration count for a * message of the provided length. If the total would exceed the maximum, append * an error. * * @param state - the program state * @param messageLength - the message length * @param operation - the operation to execute if no error occurred */ export declare const incrementHashDigestIterations: (state: State, messageLength: number, operation: (nextState: State) => State) => State; export declare const opRipemd160ChipLimits: ({ ripemd160, }?: { ripemd160: { hash: Ripemd160['hash']; }; }) => Operation; export declare const opSha1ChipLimits: ({ sha1, }?: { sha1: { hash: Sha1['hash']; }; }) => Operation; export declare const opSha256ChipLimits: ({ sha256, }?: { sha256: { hash: Sha256['hash']; }; }) => Operation; export declare const opHash160ChipLimits: ({ ripemd160, sha256, }?: { sha256: { hash: Sha256['hash']; }; ripemd160: { hash: Ripemd160['hash']; }; }) => Operation; export declare const opHash256ChipLimits: ({ sha256, }?: { sha256: { hash: Sha256['hash']; }; }) => Operation; export declare const opCheckSigChipLimits: ({ secp256k1, sha256, }?: { sha256: { hash: Sha256['hash']; }; secp256k1: { verifySignatureSchnorr: Secp256k1['verifySignatureSchnorr']; verifySignatureDERLowS: Secp256k1['verifySignatureDERLowS']; }; }) => Operation; export declare const opCheckMultiSigChipLimits: ({ secp256k1, sha256, }?: { sha256: { hash: Sha256['hash']; }; secp256k1: { verifySignatureDERLowS: Secp256k1['verifySignatureDERLowS']; }; }) => (s: State) => State; export declare const opCheckSigVerifyChipLimits: ({ secp256k1, sha256, }?: { sha256: { hash: Sha256['hash']; }; secp256k1: { verifySignatureSchnorr: Secp256k1['verifySignatureSchnorr']; verifySignatureDERLowS: Secp256k1['verifySignatureDERLowS']; }; }) => Operation; export declare const opCheckMultiSigVerifyChipLimits: ({ secp256k1, sha256, }: { sha256: { hash: Sha256['hash']; }; secp256k1: { verifySignatureDERLowS: Secp256k1['verifySignatureDERLowS']; }; }) => Operation; export declare const opCheckDataSigChipLimits: ({ secp256k1, sha256, }: { sha256: { hash: Sha256['hash']; }; secp256k1: { verifySignatureSchnorr: Secp256k1['verifySignatureSchnorr']; verifySignatureDERLowS: Secp256k1['verifySignatureDERLowS']; }; }) => (state: State) => State; export declare const opCheckDataSigVerifyChipLimits: ({ secp256k1, sha256, }?: { sha256: { hash: Sha256['hash']; }; secp256k1: { verifySignatureSchnorr: Secp256k1['verifySignatureSchnorr']; verifySignatureDERLowS: Secp256k1['verifySignatureDERLowS']; }; }) => (state: State) => State; //# sourceMappingURL=bch-chips-crypto.d.ts.map