wowok
Version:
Create, collaborate, and transact on your own terms with the AI-driven web3 collaboration protocol.
55 lines • 2.37 kB
TypeScript
import { type TransactionResult, Transaction as TransactionBlock } from '@mysten/sui/transactions';
import { PassportObject, PermissionObject, TreasuryAddress, TxbObject, CoinObject, PaymentObject, ReceivedObject } from './protocol';
export declare enum Treasury_WithdrawMode {
PERMISSION = 0,
GUARD_ONLY_AND_IMMUTABLE = 1,
BOTH_PERMISSION_AND_GUARD = 2
}
export declare enum Treasury_Operation {
WITHDRAW = 1,
DEPOSIT = 2,
RECEIVE = 4
}
export interface DepositParam {
coin: CoinObject;
index: bigint;
remark: string;
for_object?: string;
for_guard?: string;
}
export interface WithdrawItem {
address: string;
amount: bigint | number | string;
}
export interface WithdrawParam {
items: WithdrawItem[];
index: bigint | number | string;
remark: string;
for_object?: string;
for_guard?: string;
withdraw_guard?: string;
}
export declare class Treasury {
protected token_type: string;
protected permission: PermissionObject;
protected object: TxbObject;
protected txb: TransactionBlock;
get_token_type(): string;
get_object(): TxbObject;
static From(txb: TransactionBlock, token_type: string, permission: PermissionObject, object: TxbObject): Treasury;
private constructor();
static New(txb: TransactionBlock, token_type: string, permission: PermissionObject, description: string, passport?: PassportObject): Treasury;
launch(): TreasuryAddress;
set_deposit_guard(guard?: string, passport?: PassportObject): void;
deposit(param: DepositParam, passport?: PassportObject): TransactionResult;
receive(payment: PaymentObject, received: ReceivedObject, passport?: PassportObject): TransactionResult;
withdraw(param: WithdrawParam, passport?: PassportObject): TransactionResult | undefined;
set_description(description: string, passport?: PassportObject): void;
set_withdraw_mode(mode: Treasury_WithdrawMode, passport?: PassportObject): void;
add_withdraw_guard(guard: string, amount: bigint, passport?: PassportObject): void;
remove_withdraw_guard(guard: string[], removeall?: boolean, passport?: PassportObject): void;
change_permission(new_permission: PermissionObject): void;
static parseObjectType: (chain_type?: string) => string;
static MAX_WITHDRAW_GUARD_COUNT: number;
}
//# sourceMappingURL=treasury.d.ts.map