UNPKG

pulsar-contracts

Version:

284 lines (283 loc) 16 kB
import { Field, Provable, SelfProof } from 'o1js'; import { PulsarAction } from './types/PulsarAction.js'; export { ActionStackProof, ActionStackQueue, ActionStackProgram }; declare const ActionList_base: (new (value: { isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }) => { isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }) & { _isStruct: true; } & Omit<import("o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{ isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }, { isDummy: boolean; actionListHash: bigint; }>, "fromFields"> & { fromFields: (fields: import("o1js/dist/node/lib/provable/field.js").Field[]) => { isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }; } & { fromValue: (value: { isDummy: boolean | import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: string | number | bigint | import("o1js/dist/node/lib/provable/field.js").Field; }) => { isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }; toInput: (x: { isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }) => { fields?: Field[] | undefined; packed?: [Field, number][] | undefined; }; toJSON: (x: { isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }) => { isDummy: boolean; actionListHash: string; }; fromJSON: (x: { isDummy: boolean; actionListHash: string; }) => { isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }; empty: () => { isDummy: import("o1js/dist/node/lib/provable/bool.js").Bool; actionListHash: import("o1js/dist/node/lib/provable/field.js").Field; }; }; declare class ActionList extends ActionList_base { } declare const ActionStackQueue_base: (new (value: { stack: ActionList[]; }) => { stack: ActionList[]; }) & { _isStruct: true; } & Omit<import("o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{ stack: ActionList[]; }, { stack: { isDummy: boolean; actionListHash: bigint; }[]; }>, "fromFields"> & { fromFields: (fields: import("o1js/dist/node/lib/provable/field.js").Field[]) => { stack: ActionList[]; }; } & { fromValue: (value: { stack: ActionList[] | { isDummy: boolean; actionListHash: bigint; }[]; }) => { stack: ActionList[]; }; toInput: (x: { stack: ActionList[]; }) => { fields?: Field[] | undefined; packed?: [Field, number][] | undefined; }; toJSON: (x: { stack: ActionList[]; }) => { stack: { isDummy: boolean; actionListHash: string; }[]; }; fromJSON: (x: { stack: { isDummy: boolean; actionListHash: string; }[]; }) => { stack: ActionList[]; }; empty: () => { stack: ActionList[]; }; }; declare class ActionStackQueue extends ActionStackQueue_base { static empty(): ActionStackQueue; static fromArray(actions: PulsarAction[]): ActionStackQueue; toJSON(): { isDummy: boolean; actionListHash: string; }[]; } declare const ActionStackProgram: { name: string; maxProofsVerified(): Promise<0 | 1 | 2>; compile: (options?: { cache?: import("o1js").Cache; forceRecompile?: boolean; proofsEnabled?: boolean; withRuntimeTables?: boolean; numChunks?: number; lazyMode?: boolean; }) => Promise<{ verificationKey: { data: string; hash: Field; }; }>; verify: (proof: import("o1js").Proof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>) => Promise<boolean>; digest: () => Promise<string>; analyzeMethods: () => Promise<{ proveBase: import("o1js/dist/node/lib/provable/core/provable-context.js").ConstraintSystemSummary & { proofs: import("o1js/dist/node/lib/proof-system/proof.js").ProofClass[]; }; proveRecursive: import("o1js/dist/node/lib/provable/core/provable-context.js").ConstraintSystemSummary & { proofs: import("o1js/dist/node/lib/proof-system/proof.js").ProofClass[]; }; }>; analyzeSingleMethod<K extends "proveBase" | "proveRecursive">(methodName: K): Promise<import("o1js/dist/node/lib/provable/core/provable-context.js").ConstraintSystemSummary & { proofs: import("o1js/dist/node/lib/proof-system/proof.js").ProofClass[]; }>; publicInputType: typeof import("o1js/dist/node/lib/provable/field.js").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/provable/core/fieldvar.js").FieldConst | import("o1js/dist/node/lib/provable/core/fieldvar.js").FieldVar | import("o1js/dist/node/lib/provable/field.js").Field) => import("o1js/dist/node/lib/provable/field.js").Field); publicOutputType: typeof import("o1js/dist/node/lib/provable/field.js").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/provable/core/fieldvar.js").FieldConst | import("o1js/dist/node/lib/provable/core/fieldvar.js").FieldVar | import("o1js/dist/node/lib/provable/field.js").Field) => import("o1js/dist/node/lib/provable/field.js").Field); privateInputTypes: { proveBase: [typeof ActionStackQueue]; proveRecursive: [{ new ({ proof, publicInput, publicOutput, maxProofsVerified, }: { proof: import("o1js/dist/node/bindings.js").Pickles.Proof; publicInput: import("o1js/dist/node/lib/provable/field.js").Field; publicOutput: import("o1js/dist/node/lib/provable/field.js").Field; maxProofsVerified: 0 | 1 | 2; }): SelfProof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>; fromJSON<S extends import("o1js/dist/node/lib/util/types.js").Subclass<typeof import("o1js").Proof>>(this: S, { maxProofsVerified, proof: proofString, publicInput: publicInputJson, publicOutput: publicOutputJson, }: import("o1js").JsonProof): Promise<import("o1js").Proof<import("o1js").InferProvable<S["publicInputType"]>, import("o1js").InferProvable<S["publicOutputType"]>>>; dummy<Input, OutPut>(publicInput: Input, publicOutput: OutPut, maxProofsVerified: 0 | 1 | 2, domainLog2?: number): Promise<import("o1js").Proof<Input, OutPut>>; get provable(): { toFields: (value: import("o1js").Proof<any, any>) => import("o1js/dist/node/lib/provable/field.js").Field[]; toAuxiliary: (value?: import("o1js").Proof<any, any> | undefined) => any[]; fromFields: (fields: import("o1js/dist/node/lib/provable/field.js").Field[], aux: any[]) => import("o1js").Proof<any, any>; sizeInFields(): number; check: (value: import("o1js").Proof<any, any>) => void; toValue: (x: import("o1js").Proof<any, any>) => import("o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>; fromValue: (x: import("o1js").Proof<any, any> | import("o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>) => import("o1js").Proof<any, any>; toCanonical?: ((x: import("o1js").Proof<any, any>) => import("o1js").Proof<any, any>) | undefined; }; publicInputType: import("o1js").FlexibleProvable<any>; publicOutputType: import("o1js").FlexibleProvable<any>; tag: () => { name: string; }; publicFields(value: import("o1js").ProofBase): { input: import("o1js/dist/node/lib/provable/field.js").Field[]; output: import("o1js/dist/node/lib/provable/field.js").Field[]; }; _proofFromBase64(proofString: import("o1js/dist/node/bindings.js").Base64ProofString, maxProofsVerified: 0 | 1 | 2): unknown; _proofToBase64(proof: import("o1js/dist/node/bindings.js").Pickles.Proof, maxProofsVerified: 0 | 1 | 2): string; }, typeof ActionStackQueue]; }; auxiliaryOutputTypes: { proveBase: undefined; proveRecursive: undefined; }; rawMethods: { proveBase: (publicInput: import("o1js/dist/node/lib/provable/field.js").Field, args_0: ActionStackQueue) => Promise<{ publicOutput: import("o1js/dist/node/lib/provable/field.js").Field; }>; proveRecursive: (publicInput: import("o1js/dist/node/lib/provable/field.js").Field, args_0: SelfProof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>, args_1: ActionStackQueue) => Promise<{ publicOutput: import("o1js/dist/node/lib/provable/field.js").Field; }>; }; Proof: { new ({ proof, publicInput, publicOutput, maxProofsVerified, }: { proof: import("o1js/dist/node/bindings.js").Pickles.Proof; publicInput: import("o1js/dist/node/lib/provable/field.js").Field; publicOutput: import("o1js/dist/node/lib/provable/field.js").Field; maxProofsVerified: 0 | 1 | 2; }): import("o1js").Proof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>; fromJSON<S extends import("o1js/dist/node/lib/util/types.js").Subclass<typeof import("o1js").Proof>>(this: S, { maxProofsVerified, proof: proofString, publicInput: publicInputJson, publicOutput: publicOutputJson, }: import("o1js").JsonProof): Promise<import("o1js").Proof<import("o1js").InferProvable<S["publicInputType"]>, import("o1js").InferProvable<S["publicOutputType"]>>>; dummy<Input, OutPut>(publicInput: Input, publicOutput: OutPut, maxProofsVerified: 0 | 1 | 2, domainLog2?: number): Promise<import("o1js").Proof<Input, OutPut>>; get provable(): { toFields: (value: import("o1js").Proof<any, any>) => import("o1js/dist/node/lib/provable/field.js").Field[]; toAuxiliary: (value?: import("o1js").Proof<any, any> | undefined) => any[]; fromFields: (fields: import("o1js/dist/node/lib/provable/field.js").Field[], aux: any[]) => import("o1js").Proof<any, any>; sizeInFields(): number; check: (value: import("o1js").Proof<any, any>) => void; toValue: (x: import("o1js").Proof<any, any>) => import("o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>; fromValue: (x: import("o1js").Proof<any, any> | import("o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>) => import("o1js").Proof<any, any>; toCanonical?: ((x: import("o1js").Proof<any, any>) => import("o1js").Proof<any, any>) | undefined; }; publicInputType: import("o1js").FlexibleProvable<any>; publicOutputType: import("o1js").FlexibleProvable<any>; tag: () => { name: string; }; publicFields(value: import("o1js").ProofBase): { input: import("o1js/dist/node/lib/provable/field.js").Field[]; output: import("o1js/dist/node/lib/provable/field.js").Field[]; }; _proofFromBase64(proofString: import("o1js/dist/node/bindings.js").Base64ProofString, maxProofsVerified: 0 | 1 | 2): unknown; _proofToBase64(proof: import("o1js/dist/node/bindings.js").Pickles.Proof, maxProofsVerified: 0 | 1 | 2): string; }; proofsEnabled: boolean; setProofsEnabled(proofsEnabled: boolean): void; } & { proveBase: (publicInput: string | number | bigint | import("o1js/dist/node/lib/provable/field.js").Field, args_0: ActionStackQueue | { stack: ActionList[] | { isDummy: boolean; actionListHash: bigint; }[]; }) => Promise<{ proof: import("o1js").Proof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>; auxiliaryOutput: undefined; }>; proveRecursive: (publicInput: string | number | bigint | import("o1js/dist/node/lib/provable/field.js").Field, args_0: import("o1js").Proof<any, any> | import("o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>, args_1: ActionStackQueue | { stack: ActionList[] | { isDummy: boolean; actionListHash: bigint; }[]; }) => Promise<{ proof: import("o1js").Proof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>; auxiliaryOutput: undefined; }>; }; declare const ActionStackProof_base: { new ({ proof, publicInput, publicOutput, maxProofsVerified, }: { proof: unknown; publicInput: import("o1js/dist/node/lib/provable/field.js").Field; publicOutput: import("o1js/dist/node/lib/provable/field.js").Field; maxProofsVerified: 0 | 2 | 1; }): import("o1js").Proof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>; fromJSON<S extends import("o1js/dist/node/lib/util/types.js").Subclass<typeof import("o1js").Proof>>(this: S, { maxProofsVerified, proof: proofString, publicInput: publicInputJson, publicOutput: publicOutputJson, }: import("o1js").JsonProof): Promise<import("o1js").Proof<import("o1js").InferProvable<S["publicInputType"]>, import("o1js").InferProvable<S["publicOutputType"]>>>; dummy<Input, OutPut>(publicInput: Input, publicOutput: OutPut, maxProofsVerified: 0 | 2 | 1, domainLog2?: number): Promise<import("o1js").Proof<Input, OutPut>>; readonly provable: { toFields: (value: import("o1js").Proof<any, any>) => import("o1js/dist/node/lib/provable/field.js").Field[]; toAuxiliary: (value?: import("o1js").Proof<any, any> | undefined) => any[]; fromFields: (fields: import("o1js/dist/node/lib/provable/field.js").Field[], aux: any[]) => import("o1js").Proof<any, any>; sizeInFields(): number; check: (value: import("o1js").Proof<any, any>) => void; toValue: (x: import("o1js").Proof<any, any>) => import("o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>; fromValue: (x: import("o1js").Proof<any, any> | import("o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>) => import("o1js").Proof<any, any>; toCanonical?: ((x: import("o1js").Proof<any, any>) => import("o1js").Proof<any, any>) | undefined; }; publicInputType: import("o1js").FlexibleProvable<any>; publicOutputType: import("o1js").FlexibleProvable<any>; tag: () => { name: string; }; publicFields(value: import("o1js").ProofBase<any, any>): { input: import("o1js/dist/node/lib/provable/field.js").Field[]; output: import("o1js/dist/node/lib/provable/field.js").Field[]; }; _proofFromBase64(proofString: string, maxProofsVerified: 0 | 2 | 1): unknown; _proofToBase64(proof: unknown, maxProofsVerified: 0 | 2 | 1): string; } & { provable: Provable<import("o1js").Proof<import("o1js/dist/node/lib/provable/field.js").Field, import("o1js/dist/node/lib/provable/field.js").Field>, import("o1js/dist/node/lib/proof-system/proof.js").ProofValue<bigint, bigint>>; }; declare class ActionStackProof extends ActionStackProof_base { }