UNPKG

o1js

Version:

TypeScript framework for zk-SNARKs and zkApps

206 lines (205 loc) 6.64 kB
import { GenericBool, GenericField, GenericHashInput, GenericSignableBool, GenericSignableField } from '../../lib/generic.js'; import * as Json from '../gen/v1/transaction-json.js'; import { HashHelpers } from '../../../lib/provable/crypto/hash-generic.js'; export { derivedLeafTypes, derivedLeafTypesSignable, tokenSymbolLength }; declare const tokenSymbolLength = 6; declare function derivedLeafTypes<Field, Bool>({ Field, Bool, HashHelpers, packToFields, }: { Field: GenericField<Field>; Bool: GenericBool<Field, Bool>; HashHelpers: HashHelpers<Field>; packToFields: (input: GenericHashInput<Field>) => Field[]; }): { TokenId: Omit<import("../../lib/generic.js").GenericProvableExtended<Field, bigint, string, Field>, "toJSON" | "fromJSON"> & { empty: () => Field; toJSON(x: Field): string; fromJSON(x: string): Field; }; StateHash: Omit<import("../../lib/generic.js").GenericProvableExtended<Field, bigint, string, Field>, "toJSON" | "fromJSON"> & { empty: () => Field; toJSON(x: Field): string; fromJSON(x: string): Field; }; TokenSymbol: Omit<import("../../lib/generic.js").GenericProvableExtended<{ field: Field; symbol: string; }, { field: bigint; symbol: string; }, { field: string; symbol: string; }, Field>, "toJSON" | "fromJSON"> & { toInput({ field }: TokenSymbol<Field>): GenericHashInput<Field>; toJSON({ symbol }: TokenSymbol<Field>): string; fromJSON(symbol: string): TokenSymbol<Field>; }; AuthRequired: Omit<import("../../lib/generic.js").GenericProvableExtended<{ constant: Bool; signatureNecessary: Bool; signatureSufficient: Bool; }, { constant: boolean; signatureNecessary: boolean; signatureSufficient: boolean; }, { constant: boolean; signatureNecessary: boolean; signatureSufficient: boolean; }, Field>, "toJSON" | "fromJSON"> & { empty(): AuthRequired<Bool>; toJSON(x: AuthRequired<Bool>): Json.AuthRequired; fromJSON(json: Json.AuthRequired): AuthRequired<Bool>; }; ZkappUri: import("../../lib/generic.js").GenericProvableExtended<{ data: string; hash: Field; }, { data: string; hash: bigint; }, string, Field>; }; declare function derivedLeafTypesSignable<Field, Bool>({ Field, Bool, HashHelpers, packToFields, }: { Field: GenericSignableField<Field>; Bool: GenericSignableBool<Field, Bool>; HashHelpers: HashHelpers<Field>; packToFields: (input: GenericHashInput<Field>) => Field[]; }): { TokenId: Omit<{ toInput: (x: Field) => { fields?: Field[] | undefined; packed?: [Field, number][] | undefined; }; toJSON: (x: Field) => string; fromJSON: (x: string) => Field; empty: () => Field; }, "toJSON" | "fromJSON"> & { empty: () => Field; toJSON(x: Field): string; fromJSON(x: string): Field; }; StateHash: Omit<{ toInput: (x: Field) => { fields?: Field[] | undefined; packed?: [Field, number][] | undefined; }; toJSON: (x: Field) => string; fromJSON: (x: string) => Field; empty: () => Field; }, "toJSON" | "fromJSON"> & { empty: () => Field; toJSON(x: Field): string; fromJSON(x: string): Field; }; TokenSymbol: Omit<{ toInput: (x: { field: Field; symbol: string; }) => { fields?: Field[] | undefined; packed?: [Field, number][] | undefined; }; toJSON: (x: { field: Field; symbol: string; }) => { field: string; symbol: string; }; fromJSON: (x: { field: string; symbol: string; }) => { field: Field; symbol: string; }; empty: () => { field: Field; symbol: string; }; }, "toJSON" | "fromJSON"> & { toInput({ field }: TokenSymbol<Field>): GenericHashInput<Field>; toJSON({ symbol }: TokenSymbol<Field>): string; fromJSON(symbol: string): TokenSymbol<Field>; }; AuthRequired: Omit<{ toInput: (x: { constant: Bool; signatureNecessary: Bool; signatureSufficient: Bool; }) => { fields?: Field[] | undefined; packed?: [Field, number][] | undefined; }; toJSON: (x: { constant: Bool; signatureNecessary: Bool; signatureSufficient: Bool; }) => { constant: boolean; signatureNecessary: boolean; signatureSufficient: boolean; }; fromJSON: (x: { constant: boolean; signatureNecessary: boolean; signatureSufficient: boolean; }) => { constant: Bool; signatureNecessary: Bool; signatureSufficient: Bool; }; empty: () => { constant: Bool; signatureNecessary: Bool; signatureSufficient: Bool; }; }, "toJSON" | "fromJSON"> & { empty(): AuthRequired<Bool>; toJSON(x: AuthRequired<Bool>): Json.AuthRequired; fromJSON(json: Json.AuthRequired): AuthRequired<Bool>; }; MayUseToken: { toInput: (x: { parentsOwnToken: Bool; inheritFromParent: Bool; }) => { fields?: Field[] | undefined; packed?: [Field, number][] | undefined; }; toJSON: (x: { parentsOwnToken: Bool; inheritFromParent: Bool; }) => { parentsOwnToken: boolean; inheritFromParent: boolean; }; fromJSON: (x: { parentsOwnToken: boolean; inheritFromParent: boolean; }) => { parentsOwnToken: Bool; inheritFromParent: Bool; }; empty: () => { parentsOwnToken: Bool; inheritFromParent: Bool; }; }; Bool: GenericSignableBool<Field, Bool>; ZkappUri: import("../../lib/generic.js").GenericProvableExtended<{ data: string; hash: Field; }, { data: string; hash: bigint; }, string, Field>; }; type TokenSymbol<Field> = { symbol: string; field: Field; }; type AuthRequired<Bool> = { constant: Bool; signatureNecessary: Bool; signatureSufficient: Bool; };