UNPKG

wowok

Version:

Wowok Blockchain TypeScript API

97 lines (96 loc) 4.75 kB
import type { CoinObject } from "../common.js"; import type { TransactionObjectArgument } from "../../transactions/index.js"; import { Transaction } from "../../transactions/index.js"; import type { ENTRYPOINT } from "../../client/network.js"; import type { CoinBalance, PaginatedCoins, WowTransactionBlockResponse } from "../../client/index.js"; export interface IAccountStorage { get(): Promise<string | undefined>; put(data: string): Promise<void>; clear(): Promise<void>; } export declare const DEFAULT_ACCOUNT_NAME = ""; export declare const MAX_MESSENGER_ACCOUNTS = 100; export type FaucetCoinInfo = { amount: number; id: string; transferTxDigest: string; }; export interface AccountData { name?: string; address: string; pubkey?: string; secret?: string; suspended?: boolean; createdAt?: number; updatedAt?: number; m?: string | null; } export interface AccountFilter { name?: string; address?: string; suspended?: boolean; hasMessenger?: boolean; m?: string; createdAt?: { gte?: number; lte?: number; }; updatedAt?: { gte?: number; lte?: number; }; } export declare class Account { static _instance: any; static storage: IAccountStorage | undefined; setStorage(storage: IAccountStorage): void; private getStorage; static Instance(): Account; private accountData; gen(name?: string | null | undefined, replaceExistName?: boolean, m?: string | null | undefined): Promise<AccountData>; default(): Promise<AccountData | undefined>; get(address_or_name: string | null | undefined, notFoundGenerate?: boolean): Promise<AccountData | undefined>; get_address(address_or_name: string | null | undefined): Promise<string | undefined>; get_many_address(address_or_names: (string | null | undefined)[]): Promise<(string | undefined)[]>; private get_imp; private name_resolve; private get_many_imp; swap_name(name1: string | null | undefined, name2: string | null | undefined): Promise<boolean>; rename(name_or_address: string | null | undefined, new_name: string): Promise<boolean>; list(filter?: AccountFilter): Promise<AccountData[]>; suspend(address_or_name?: string): Promise<boolean>; suspend_many(address_or_names: string[]): Promise<{ success: string[]; failed: string[]; }>; resume(address: string, name: string | null | undefined): Promise<boolean>; faucet(address_or_name: string | null | undefined, network: "testnet" | "devnet" | "localnet"): Promise<FaucetCoinInfo[]>; sign_and_commit(tx: Transaction, address_or_name?: string, network?: ENTRYPOINT): Promise<WowTransactionBlockResponse | undefined>; balance: (token_type?: string, address_or_name?: string, network?: ENTRYPOINT) => Promise<CoinBalance | undefined>; coin: (token_type?: string, cursor?: string | null | undefined, limit?: number | null | undefined, address_or_name?: string, network?: ENTRYPOINT) => Promise<PaginatedCoins | undefined>; get_coin_object: (txb: Transaction, balance_required: string | bigint | number, token_type?: string, address_or_name?: string, network?: ENTRYPOINT) => Promise<TransactionObjectArgument | undefined>; get_many_coin_object: (txb: Transaction, balance_required: (string | bigint | number)[], token_type?: string, address_or_name?: string, network?: ENTRYPOINT) => Promise<TransactionObjectArgument>; refund_coin(txb: Transaction, coin: CoinObject, to_address_or_name?: string): Promise<void>; transfer(amount: number | string | bigint, token_type?: string, to_address_or_name?: string, from_address_or_name?: string, network?: ENTRYPOINT): Promise<WowTransactionBlockResponse | undefined>; coinObject_with_balance: (balance_required: string | bigint | number, token_type?: string, address_or_name?: string, network?: ENTRYPOINT) => Promise<string | undefined>; sign(address_or_name: string | null | undefined, data: string | Uint8Array): Promise<string>; signData(address_or_name: string | null | undefined, data: string | Uint8Array): Promise<{ signature: string; publicKey: string; address: string; }>; deriveX25519Identity(address_or_name: string | null | undefined): Promise<{ x25519KeyPair: { publicKey: Uint8Array; privateKey: Uint8Array; }; falcon512KeyPair: { publicKey: Uint8Array; privateKey: Uint8Array; }; registrationId: number; }>; set_messenger(address_or_name: string | null | undefined, m: string | null): Promise<boolean>; list_messenger_accounts(): Promise<AccountData[]>; count_messenger_accounts(): Promise<number>; }