import { Actions, AuthRequired, Bool, Events, Field, Int64, Option, PublicKey, Range, StateHash, TokenId, TokenSymbol, UInt32, UInt64, ZkappUri } from '../../v2/leaves.js'; import { BindingsType } from '../../v2/schema.js'; export { Account, AccountPrecondition, AccountTiming, AccountUpdateBody, AccountUpdateModification, AuthorizationKindStructured, Control, EpochDataPrecondition, EpochLedgerPrecondition, FeePayerBody, MayUseToken, NetworkPrecondition, Permissions, Preconditions, Timing, Types, VerificationKeyPermission, VerificationKeyWithHash, ZkappAccount, ZkappAccountUpdate, ZkappCommand, ZkappFeePayer, }; type FeePayerBody = { publicKey: PublicKey; fee: UInt64; validUntil: UInt32 | undefined; nonce: UInt32; }; declare const FeePayerBody: BindingsType.Object; type VerificationKeyWithHash = { data: string; hash: Field; }; declare const VerificationKeyWithHash: BindingsType.Object; type VerificationKeyPermission = { auth: AuthRequired; txnVersion: UInt32; }; declare const VerificationKeyPermission: BindingsType.Object; type Timing = { initialMinimumBalance: UInt64; cliffTime: UInt32; cliffAmount: UInt64; vestingPeriod: UInt32; vestingIncrement: UInt64; }; declare const Timing: BindingsType.Object; type EpochLedgerPrecondition = { hash: Option; totalCurrency: Option>; }; declare const EpochLedgerPrecondition: BindingsType.Object; type AccountPrecondition = { balance: Option>; nonce: Option>; receiptChainHash: Option; delegate: Option; state: Option[]; actionState: Option; provedState: Option; isNew: Option; }; declare const AccountPrecondition: BindingsType.Object; type MayUseToken = { parentsOwnToken: Bool; inheritFromParent: Bool; }; declare const MayUseToken: BindingsType.Object; type AuthorizationKindStructured = { isSigned: Bool; isProved: Bool; verificationKeyHash: Field; }; declare const AuthorizationKindStructured: BindingsType.Object; type Control = { proof: string | undefined; signature: string | undefined; }; declare const Control: BindingsType.Object; type AccountTiming = { isTimed: Bool; initialMinimumBalance: UInt64; cliffTime: UInt32; cliffAmount: UInt64; vestingPeriod: UInt32; vestingIncrement: UInt64; }; declare const AccountTiming: BindingsType.Object; type ZkappFeePayer = { body: { publicKey: PublicKey; fee: UInt64; validUntil: UInt32 | undefined; nonce: UInt32; }; authorization: string; }; declare const ZkappFeePayer: BindingsType.Object; type Permissions = { editState: AuthRequired; access: AuthRequired; send: AuthRequired; receive: AuthRequired; setDelegate: AuthRequired; setPermissions: AuthRequired; setVerificationKey: { auth: AuthRequired; txnVersion: UInt32; }; setZkappUri: AuthRequired; editActionState: AuthRequired; setTokenSymbol: AuthRequired; incrementNonce: AuthRequired; setVotingFor: AuthRequired; setTiming: AuthRequired; }; declare const Permissions: BindingsType.Object; type EpochDataPrecondition = { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; declare const EpochDataPrecondition: BindingsType.Object; type ZkappAccount = { appState: Field[]; verificationKey: { data: string; hash: Field; } | undefined; zkappVersion: UInt32; actionState: Field[]; lastActionSlot: UInt32; provedState: Bool; zkappUri: string; }; declare const ZkappAccount: BindingsType.Object; type AccountUpdateModification = { appState: Option[]; delegate: Option; verificationKey: Option<{ data: string; hash: Field; }>; permissions: Option<{ editState: AuthRequired; access: AuthRequired; send: AuthRequired; receive: AuthRequired; setDelegate: AuthRequired; setPermissions: AuthRequired; setVerificationKey: { auth: AuthRequired; txnVersion: UInt32; }; setZkappUri: AuthRequired; editActionState: AuthRequired; setTokenSymbol: AuthRequired; incrementNonce: AuthRequired; setVotingFor: AuthRequired; setTiming: AuthRequired; }>; zkappUri: Option; tokenSymbol: Option; timing: Option<{ initialMinimumBalance: UInt64; cliffTime: UInt32; cliffAmount: UInt64; vestingPeriod: UInt32; vestingIncrement: UInt64; }>; votingFor: Option; }; declare const AccountUpdateModification: BindingsType.Object; type NetworkPrecondition = { snarkedLedgerHash: Option; blockchainLength: Option>; minWindowDensity: Option>; totalCurrency: Option>; globalSlotSinceGenesis: Option>; stakingEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; nextEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; }; declare const NetworkPrecondition: BindingsType.Object; type Account = { publicKey: PublicKey; tokenId: TokenId; tokenSymbol: string; balance: UInt64; nonce: UInt32; receiptChainHash: Field; delegate: PublicKey | undefined; votingFor: Field; timing: { isTimed: Bool; initialMinimumBalance: UInt64; cliffTime: UInt32; cliffAmount: UInt64; vestingPeriod: UInt32; vestingIncrement: UInt64; }; permissions: { editState: AuthRequired; access: AuthRequired; send: AuthRequired; receive: AuthRequired; setDelegate: AuthRequired; setPermissions: AuthRequired; setVerificationKey: { auth: AuthRequired; txnVersion: UInt32; }; setZkappUri: AuthRequired; editActionState: AuthRequired; setTokenSymbol: AuthRequired; incrementNonce: AuthRequired; setVotingFor: AuthRequired; setTiming: AuthRequired; }; zkapp: { appState: Field[]; verificationKey: { data: string; hash: Field; } | undefined; zkappVersion: UInt32; actionState: Field[]; lastActionSlot: UInt32; provedState: Bool; zkappUri: string; } | undefined; }; declare const Account: BindingsType.Object; type Preconditions = { network: { snarkedLedgerHash: Option; blockchainLength: Option>; minWindowDensity: Option>; totalCurrency: Option>; globalSlotSinceGenesis: Option>; stakingEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; nextEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; }; account: { balance: Option>; nonce: Option>; receiptChainHash: Option; delegate: Option; state: Option[]; actionState: Option; provedState: Option; isNew: Option; }; validWhile: Option>; }; declare const Preconditions: BindingsType.Object; type AccountUpdateBody = { publicKey: PublicKey; tokenId: TokenId; update: { appState: Option[]; delegate: Option; verificationKey: Option<{ data: string; hash: Field; }>; permissions: Option<{ editState: AuthRequired; access: AuthRequired; send: AuthRequired; receive: AuthRequired; setDelegate: AuthRequired; setPermissions: AuthRequired; setVerificationKey: { auth: AuthRequired; txnVersion: UInt32; }; setZkappUri: AuthRequired; editActionState: AuthRequired; setTokenSymbol: AuthRequired; incrementNonce: AuthRequired; setVotingFor: AuthRequired; setTiming: AuthRequired; }>; zkappUri: Option; tokenSymbol: Option; timing: Option<{ initialMinimumBalance: UInt64; cliffTime: UInt32; cliffAmount: UInt64; vestingPeriod: UInt32; vestingIncrement: UInt64; }>; votingFor: Option; }; balanceChange: Int64; incrementNonce: Bool; events: Events; actions: Actions; callData: Field; callDepth: number; preconditions: { network: { snarkedLedgerHash: Option; blockchainLength: Option>; minWindowDensity: Option>; totalCurrency: Option>; globalSlotSinceGenesis: Option>; stakingEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; nextEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; }; account: { balance: Option>; nonce: Option>; receiptChainHash: Option; delegate: Option; state: Option[]; actionState: Option; provedState: Option; isNew: Option; }; validWhile: Option>; }; useFullCommitment: Bool; implicitAccountCreationFee: Bool; mayUseToken: { parentsOwnToken: Bool; inheritFromParent: Bool; }; authorizationKind: { isSigned: Bool; isProved: Bool; verificationKeyHash: Field; }; }; declare const AccountUpdateBody: BindingsType.Object; type ZkappAccountUpdate = { body: { publicKey: PublicKey; tokenId: TokenId; update: { appState: Option[]; delegate: Option; verificationKey: Option<{ data: string; hash: Field; }>; permissions: Option<{ editState: AuthRequired; access: AuthRequired; send: AuthRequired; receive: AuthRequired; setDelegate: AuthRequired; setPermissions: AuthRequired; setVerificationKey: { auth: AuthRequired; txnVersion: UInt32; }; setZkappUri: AuthRequired; editActionState: AuthRequired; setTokenSymbol: AuthRequired; incrementNonce: AuthRequired; setVotingFor: AuthRequired; setTiming: AuthRequired; }>; zkappUri: Option; tokenSymbol: Option; timing: Option<{ initialMinimumBalance: UInt64; cliffTime: UInt32; cliffAmount: UInt64; vestingPeriod: UInt32; vestingIncrement: UInt64; }>; votingFor: Option; }; balanceChange: Int64; incrementNonce: Bool; events: Events; actions: Actions; callData: Field; callDepth: number; preconditions: { network: { snarkedLedgerHash: Option; blockchainLength: Option>; minWindowDensity: Option>; totalCurrency: Option>; globalSlotSinceGenesis: Option>; stakingEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; nextEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; }; account: { balance: Option>; nonce: Option>; receiptChainHash: Option; delegate: Option; state: Option[]; actionState: Option; provedState: Option; isNew: Option; }; validWhile: Option>; }; useFullCommitment: Bool; implicitAccountCreationFee: Bool; mayUseToken: { parentsOwnToken: Bool; inheritFromParent: Bool; }; authorizationKind: { isSigned: Bool; isProved: Bool; verificationKeyHash: Field; }; }; authorization: { proof: string | undefined; signature: string | undefined; }; }; declare const ZkappAccountUpdate: BindingsType.Object; type ZkappCommand = { feePayer: { body: { publicKey: PublicKey; fee: UInt64; validUntil: UInt32 | undefined; nonce: UInt32; }; authorization: string; }; accountUpdates: { body: { publicKey: PublicKey; tokenId: TokenId; update: { appState: Option[]; delegate: Option; verificationKey: Option<{ data: string; hash: Field; }>; permissions: Option<{ editState: AuthRequired; access: AuthRequired; send: AuthRequired; receive: AuthRequired; setDelegate: AuthRequired; setPermissions: AuthRequired; setVerificationKey: { auth: AuthRequired; txnVersion: UInt32; }; setZkappUri: AuthRequired; editActionState: AuthRequired; setTokenSymbol: AuthRequired; incrementNonce: AuthRequired; setVotingFor: AuthRequired; setTiming: AuthRequired; }>; zkappUri: Option; tokenSymbol: Option; timing: Option<{ initialMinimumBalance: UInt64; cliffTime: UInt32; cliffAmount: UInt64; vestingPeriod: UInt32; vestingIncrement: UInt64; }>; votingFor: Option; }; balanceChange: Int64; incrementNonce: Bool; events: Events; actions: Actions; callData: Field; callDepth: number; preconditions: { network: { snarkedLedgerHash: Option; blockchainLength: Option>; minWindowDensity: Option>; totalCurrency: Option>; globalSlotSinceGenesis: Option>; stakingEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; nextEpochData: { ledger: { hash: Option; totalCurrency: Option>; }; seed: Option; startCheckpoint: Option; lockCheckpoint: Option; epochLength: Option>; }; }; account: { balance: Option>; nonce: Option>; receiptChainHash: Option; delegate: Option; state: Option[]; actionState: Option; provedState: Option; isNew: Option; }; validWhile: Option>; }; useFullCommitment: Bool; implicitAccountCreationFee: Bool; mayUseToken: { parentsOwnToken: Bool; inheritFromParent: Bool; }; authorizationKind: { isSigned: Bool; isProved: Bool; verificationKeyHash: Field; }; }; authorization: { proof: string | undefined; signature: string | undefined; }; }[]; memo: string; }; declare const ZkappCommand: BindingsType.Object; declare const Types: { [key: string]: BindingsType; };