UNPKG

tronewb

Version:

JavaScript SDK that encapsulates the TRON HTTP API

288 lines (287 loc) 9.14 kB
import { Resource } from '../types/TransactionBuilder.js'; import { ContractAbiInterface } from './ABI.js'; export declare enum ContractType { AccountCreateContract = "AccountCreateContract", TransferContract = "TransferContract", TransferAssetContract = "TransferAssetContract", VoteAssetContract = "VoteAssetContract", VoteWitnessContract = "VoteWitnessContract", WitnessCreateContract = "WitnessCreateContract", AssetIssueContract = "AssetIssueContract", WitnessUpdateContract = "WitnessUpdateContract", ParticipateAssetIssueContract = "ParticipateAssetIssueContract", AccountUpdateContract = "AccountUpdateContract", FreezeBalanceContract = "FreezeBalanceContract", UnfreezeBalanceContract = "UnfreezeBalanceContract", CancelAllUnfreezeV2Contract = "CancelAllUnfreezeV2Contract", WithdrawBalanceContract = "WithdrawBalanceContract", UnfreezeAssetContract = "UnfreezeAssetContract", UpdateAssetContract = "UpdateAssetContract", ProposalCreateContract = "ProposalCreateContract", ProposalApproveContract = "ProposalApproveContract", ProposalDeleteContract = "ProposalDeleteContract", SetAccountIdContract = "SetAccountIdContract", CustomContract = "CustomContract", CreateSmartContract = "CreateSmartContract", TriggerSmartContract = "TriggerSmartContract", GetContract = "GetContract", UpdateSettingContract = "UpdateSettingContract", ExchangeCreateContract = "ExchangeCreateContract", ExchangeInjectContract = "ExchangeInjectContract", ExchangeWithdrawContract = "ExchangeWithdrawContract", ExchangeTransactionContract = "ExchangeTransactionContract", UpdateEnergyLimitContract = "UpdateEnergyLimitContract", AccountPermissionUpdateContract = "AccountPermissionUpdateContract", ClearABIContract = "ClearABIContract", UpdateBrokerageContract = "UpdateBrokerageContract", ShieldedTransferContract = "ShieldedTransferContract", MarketSellAssetContract = "MarketSellAssetContract", MarketCancelOrderContract = "MarketCancelOrderContract", FreezeBalanceV2Contract = "FreezeBalanceV2Contract", UnfreezeBalanceV2Contract = "UnfreezeBalanceV2Contract", WithdrawExpireUnfreezeContract = "WithdrawExpireUnfreezeContract", DelegateResourceContract = "DelegateResourceContract", UnDelegateResourceContract = "UnDelegateResourceContract", UNRECOGNIZED = "UNRECOGNIZED" } export declare enum Permission_PermissionType { Owner = 0, Witness = 1, Active = 2, UNRECOGNIZED = -1 } export interface Key { address: Uint8Array; weight: number; } export declare enum AccountType { Normal = 0, AssetIssue = 1, Contract = 2, UNRECOGNIZED = -1 } export interface PermissionKey { address: string; weight: number; } export interface Permission { type: number; /** Owner id=0, Witness id=1, Active id start by 2 */ id?: number; permission_name: string; threshold: number; operations?: string; keys: PermissionKey[]; } export interface TransferContract { to_address: string; owner_address: string; amount: number; } export interface TransferAssetContract { to_address: string; owner_address: string; amount: number; asset_name: string; } export interface ParticipateAssetIssueContract { to_address: string; owner_address: string; asset_name: string; amount: number; } export interface TriggerSmartContract { owner_address: string; contract_address: string; call_value?: number; call_token_value?: number; token_id?: number; data?: string; } export interface FreezeBalanceContract { owner_address: string; frozen_balance: number; frozen_duration: number; resource?: Resource; receiver_address?: string; } export interface UnfreezeBalanceContract { owner_address: string; resource: string; receiver_address: string; } export interface WithdrawBalanceContract { owner_address: string; } export interface FreezeBalanceV2Contract { owner_address: string; frozen_balance: number; resource?: Resource; } export interface CancelFreezeBalanceV2Contract { owner_address: string; } export interface UnfreezeBalanceV2Contract { owner_address: string; unfreeze_balance: number; resource?: Resource; } export interface DelegateResourceContract { owner_address: string; receiver_address: string; balance: number; resource?: Resource; lock?: boolean; lock_period?: number; } export interface UnDelegateResourceContract { owner_address: string; receiver_address: string; balance: number; resource?: Resource; } export interface WithdrawExpireUnfreezeContract { owner_address: string; } export interface CreateSmartContract { owner_address: string; call_token_value: number; token_id: string; new_contract: { name: string; origin_address: string; contract_address: string; abi: { entrys?: ContractAbiInterface; }; bytecode: string; call_value: number; consume_user_resource_percent: number; origin_energy_limit: number; }; } export interface DeployConstantContract { data: string; owner_address: string; call_value?: number; token_id?: number | string; call_token_value?: number | string; } export interface ClearABIContract { contract_address: string; owner_address: string; } export interface UpdateBrokerageContract { brokerage: number; owner_address: string; } interface FrozenSupply { frozen_amount: number; frozen_days: number; } export interface AssetIssueContract { owner_address: string; name: string; abbr: string; description: string; url: string; total_supply: number; trx_num: number; num: number; start_time: number; end_time: number; precision: number; free_asset_net_limit: number; public_free_asset_net_limit: number; public_free_asset_net_usage: number; public_latest_free_net_time: number; vote_score: number; frozen_supply: FrozenSupply[]; } export interface AccountCreateContract { account_address: string; owner_address: string; } export interface AccountUpdateContract { account_name: string; owner_address: string; } export interface SetAccountIdContract { account_id: string; owner_address: string; } export interface ProposalCreateContract { owner_address: string; parameters: Record<string, string | number>[]; } export interface ProposalDeleteContract { owner_address: string; proposal_id: number; } export interface VoteProposalContract { owner_address: string; proposal_id: number; is_add_approval: boolean; } export interface ExchangeCreateContract { owner_address: string; first_token_id: string; first_token_balance: number; second_token_id: string; second_token_balance: number; } export interface ExchangeInjectContract { owner_address: string; exchange_id: number; token_id: string; quant: number; } export interface ExchangeWithdrawContract { owner_address: string; exchange_id: number; token_id: string; quant: number; } export interface ExchangeTransactionContract { owner_address: string; exchange_id: number; token_id: string; quant: number; expected: number; } export interface UpdateSettingContract { owner_address: string; contract_address: string; consume_user_resource_percent: number; } export interface UpdateEnergyLimitContract { owner_address: string; contract_address: string; origin_energy_limit: number; } export interface AccountPermissionUpdateContract { owner_address: string; owner?: Permission; witness?: Permission; actives?: Permission[]; } export interface UpdateAssetContract { owner_address: string; description: string; url: string; new_limit?: number; new_public_limit?: number; } export interface WitnessCreateContract { owner_address: string; url: string; } export interface VoteWitnessContract { owner_address: string; votes: { vote_address: string; vote_count: number; }[]; } export type ContractParamter = TransferContract | TransferAssetContract | ParticipateAssetIssueContract | TriggerSmartContract | FreezeBalanceContract | UnfreezeBalanceContract | WithdrawBalanceContract | FreezeBalanceV2Contract | CancelFreezeBalanceV2Contract | UnfreezeBalanceV2Contract | DelegateResourceContract | UnDelegateResourceContract | WithdrawExpireUnfreezeContract | CreateSmartContract | ClearABIContract | UpdateBrokerageContract | AssetIssueContract | AccountCreateContract | AccountUpdateContract | SetAccountIdContract | ProposalCreateContract | ProposalDeleteContract | VoteProposalContract | ExchangeCreateContract | ExchangeInjectContract | ExchangeWithdrawContract | ExchangeTransactionContract | UpdateSettingContract | UpdateEnergyLimitContract | AccountPermissionUpdateContract | UpdateAssetContract | WitnessCreateContract | VoteWitnessContract; export {};