pulsar-contracts
Version:
78 lines (77 loc) • 3.41 kB
TypeScript
import { Field, MerkleList } from 'o1js';
export { List, emptyHash, ReduceMask, PulsarActionData };
declare const emptyHash: import("o1js/dist/node/lib/provable/field.js").Field;
declare const List_base: {
new ({ hash, data }: import("o1js/dist/node/lib/provable/merkle-list.js").MerkleListBase<import("o1js/dist/node/lib/provable/field.js").Field>): MerkleList<import("o1js/dist/node/lib/provable/field.js").Field>;
create<T>(type: import("o1js/dist/node/lib/provable/types/provable-intf.js").WithProvable<import("o1js").ProvableHashable<T>>, nextHash?: (hash: Field, value: T) => Field, emptyHash_?: import("o1js/dist/node/lib/provable/field.js").Field): typeof MerkleList<T> & {
empty: () => MerkleList<T>;
from: (array: T[]) => MerkleList<T>;
fromReverse: (array: T[]) => MerkleList<T>;
provable: import("o1js").ProvableHashable<MerkleList<T>>;
};
_nextHash: ((hash: Field, t: any) => Field) | undefined;
_emptyHash: Field | undefined;
_provable: import("o1js").ProvableHashable<MerkleList<any>> | undefined;
_innerProvable: import("o1js").ProvableHashable<any> | undefined;
get emptyHash(): import("o1js/dist/node/lib/provable/field.js").Field;
} & {
empty: () => MerkleList<import("o1js/dist/node/lib/provable/field.js").Field>;
from: (array: import("o1js/dist/node/lib/provable/field.js").Field[]) => MerkleList<import("o1js/dist/node/lib/provable/field.js").Field>;
fromReverse: (array: import("o1js/dist/node/lib/provable/field.js").Field[]) => MerkleList<import("o1js/dist/node/lib/provable/field.js").Field>;
provable: import("o1js").ProvableHashable<MerkleList<import("o1js/dist/node/lib/provable/field.js").Field>>;
};
declare class List extends List_base {
}
declare const ReduceMask_base: (new (value: {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
}) => {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
}) & {
_isStruct: true;
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
}, {
list: boolean[];
}>, "fromFields"> & {
fromFields: (fields: import("o1js/dist/node/lib/provable/field.js").Field[]) => {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
};
} & {
fromValue: (value: {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[] | boolean[];
}) => {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
};
toInput: (x: {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
}) => {
fields?: Field[] | undefined;
packed?: [Field, number][] | undefined;
};
toJSON: (x: {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
}) => {
list: boolean[];
};
fromJSON: (x: {
list: boolean[];
}) => {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
};
empty: () => {
list: import("o1js/dist/node/lib/provable/bool.js").Bool[];
};
};
declare class ReduceMask extends ReduceMask_base {
static empty(): ReduceMask;
static fromArray(arr: Array<boolean>): ReduceMask;
toJSON(): boolean[];
toField(): Field;
}
interface PulsarActionData {
public_key: string;
amount: string;
action_type: string;
cosmos_address: string;
cosmos_signature: string;
}