pulsar-contracts
Version:
16 lines (15 loc) • 1.66 kB
TypeScript
import { Field } from 'o1js';
import { Block, SettlementProof, SettlementPublicInputs } from '../SettlementProof.js';
import { ValidateReducePublicInput, ValidateReduceProof } from '../ValidateReduce.js';
import { SignaturePublicKeyList } from '../types/signaturePubKeyList.js';
import { PulsarAction } from '../types/PulsarAction.js';
export { GenerateSettlementProof, MergeSettlementProofs, GenerateSettlementPublicInput, GenerateValidateReduceProof, GenerateActionStackProof, GeneratePulsarBlock, };
declare function GenerateSettlementProof(blocks: Array<Block>, signaturePublicKeyLists: Array<SignaturePublicKeyList>): Promise<SettlementProof>;
declare function MergeSettlementProofs(proofs: Array<SettlementProof>): Promise<SettlementProof>;
declare function GenerateSettlementPublicInput(initialMerkleListRoot: Field, initialStateRoot: Field, initialBlockHeight: Field, newMerkleListRoot: Field, newStateRoot: Field, newBlockHeight: Field): SettlementPublicInputs;
declare function GeneratePulsarBlock(initialMerkleListRoot: Field, initialStateRoot: Field, initialBlockHeight: Field, newMerkleListRoot: Field, newStateRoot: Field, newBlockHeight: Field): Block;
declare function GenerateValidateReduceProof(publicInputs: ValidateReducePublicInput, signaturePublicKeyList: SignaturePublicKeyList): Promise<ValidateReduceProof>;
declare function GenerateActionStackProof(endActionState: Field, actions: PulsarAction[]): Promise<{
useActionStack: import("o1js/dist/node/lib/provable/bool.js").Bool;
actionStackProof: import("o1js").Proof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>;
}>;