@luffalab/luffa-tron-sdk
Version:
luffa tron ts sdk
1 lines • 4.62 kB
Source Map (JSON)
{"version":3,"sources":["../../src/types.ts"],"sourcesContent":["\r\nimport type tronWebModule from 'tronWeb';\r\nimport type { TronWeb } from 'tronWeb';\r\ntype TronWebSDK = typeof tronWebModule;\r\nexport enum Network {\r\n MAINNET = \"mainnet\",\r\n TESTNET = \"testnet\",\r\n\tETH = 'eth',\r\n\tBSC = 'bsc',\r\n}\r\nexport type IInitData = {\r\n\tcolorMode?: 'light' | 'dark';\r\n\tnetwork: Network | string;\r\n\tfullnode?: string;\r\n\tindexer?: string;\r\n\twalletUrl?: string;\r\n\tprover?: string;\r\n\tcallbackWalletName?: string;\r\n\tminiprogram?: Boolean;\r\n\twindowWidth?: number;\r\n};\r\n\r\nexport type ChainData = {\r\n\ttargetNet: 'endless' | 'eds' | 'eth' | 'eth_sepolia' | 'bsc' | 'bsc_testnet' | 'tron' | 'tron_nile';\r\n}\r\n\r\nexport enum UserResponseStatus {\r\n\tAPPROVED = 'Approved',\r\n\tREJECTED = 'Rejected'\r\n}\r\n\r\nexport interface UserApproval<TResponseArgs> {\r\n\tstatus: UserResponseStatus.APPROVED;\r\n\targs: TResponseArgs;\r\n}\r\n\r\nexport interface UserRejection {\r\n\tstatus: UserResponseStatus.REJECTED;\r\n\tmessage?: string;\r\n}\r\n\r\nexport type UserResponse<TResponseArgs> = UserApproval<TResponseArgs> | UserRejection;\r\n\r\nexport interface AccountInfo {\r\n\taccount: string;\r\n\taddress: string;\r\n\tauthKey: string;\r\n\tansName?: string;\r\n}\r\n\r\nexport interface NetworkInfo {\r\n\tname: Network | string;\r\n\tchainId: number;\r\n\turl?: string;\r\n}\r\n\r\nexport type EndlessSignMessageInput = {\r\n\taddress?: boolean;\r\n\tapplication?: boolean;\r\n\tchainId?: boolean;\r\n\tmessage: string;\r\n\tnonce?: string;\r\n};\r\n\r\nexport type EndlessSignMessageOutput = {\r\n\taddress?: string;\r\n\tapplication?: string;\r\n\tchainId?: number;\r\n\tfullMessage: string;\r\n\tpublicKey: string;\r\n\tmessage: string;\r\n\tnonce: string;\r\n\tprefix: 'Endless';\r\n\tsignature: '';\r\n};\r\n\r\nexport interface EndlessSignAndSubmitTransactionInput {\r\n\tgasUnitPrice?: number; // defaults to estimated gas unit price\r\n\tmaxGasAmount?: number; // defaults to estimated max gas amount\r\n\tpayload: ''; // the transaction payload\r\n\toptions?: '';\r\n}\r\n\r\nexport enum EndlessSendTransactionType {\r\n\tSIGNATURE_ONLY = 'signatureOnly',\r\n\tSIGN_AND_SUBMIT = 'signAndSubmit'\r\n}\r\n\r\nexport enum EndlessWalletTransactionType {\r\n\tSIMPLE = 'simple',\r\n\tMULTI_AGENT = 'multiAgent'\r\n}\r\ninterface TronRequestArguments {\r\n\treadonly method: string;\r\n\treadonly params?: unknown[] | object;\r\n}\r\ninterface ProviderRpcError extends Error {\r\n\tcode: number;\r\n\tmessage: string;\r\n\tdata?: unknown;\r\n}\r\ntype TronEvent = 'connect' | 'disconnect' | 'chainChanged' | 'accountsChanged';\r\nexport type TronConnectCallback = (data: { chainId: string }) => void;\r\nexport type TronChainChangedCallback = TronConnectCallback;\r\nexport type TronDisconnectCallback = (error: ProviderRpcError) => void;\r\nexport type TronAccountsChangedCallback = (data: [string?]) => void;\r\nexport interface Tron {\r\n\trequest(args: { method: 'eth_requestAccounts' }): Promise<[string]>;\r\n\trequest(args: TronRequestArguments): Promise<unknown>;\r\n\r\n\ton(event: 'connect', cb: TronConnectCallback): void;\r\n\ton(event: 'disconnect', cb: TronDisconnectCallback): void;\r\n\ton(event: 'chainChanged', cb: TronChainChangedCallback): void;\r\n\ton(event: 'accountsChanged', cb: TronAccountsChangedCallback): void;\r\n\r\n\tremoveListener(event: TronEvent, cb: unknown): void;\r\n\ttronWeb: TronWeb | false;\r\n\tisTronLink: boolean;\r\n}\r\n\r\ndeclare global {\r\n\tconst tronWeb: TronWeb;\r\n\tconst TronWeb: TronWebSDK;\r\n\tconst wx: any\r\n\r\n\tinterface Window {\r\n\t\twx: any;\r\n\t\twebkit: any;\r\n\t\tendlessWallet?: {\r\n\t\t\tsendResponse: (response: any) => void;\r\n\t\t};\r\n\t\t_endlessWallet?: {\r\n\t\t\tsendMessage: (data: any) => void;\r\n\t\t};\r\n\t\tWeixinJSBridge: {\r\n\t\t\tinvoke(api: string, data: any, callback: (res: any) => void): void;\r\n\t\t\ton(api: string, callback: (res: any) => void): void;\r\n\t\t},\r\n\t\ttronWallet?: {\r\n\t\t\tsendResponse: (response: any) => void;\r\n\t\t},\r\n\t\t_tronWallet?: {\r\n\t\t\tsendMessage: (data: any) => void;\r\n\t\t},\r\n\t\ttron: Tron;\r\n\t\ttronWeb: TronWeb;\r\n\t\tTronWeb: TronWebSDK;\r\n\t}\r\n}\r\n"],"mappings":"AAIO,IAAKA,OACVA,EAAA,QAAU,UACVA,EAAA,QAAU,UACXA,EAAA,IAAM,MACNA,EAAA,IAAM,MAJKA,OAAA,IAsBAC,OACXA,EAAA,SAAW,WACXA,EAAA,SAAW,WAFAA,OAAA,IAyDAC,OACXA,EAAA,eAAiB,gBACjBA,EAAA,gBAAkB,gBAFPA,OAAA,IAKAC,OACXA,EAAA,OAAS,SACTA,EAAA,YAAc,aAFHA,OAAA","names":["Network","UserResponseStatus","EndlessSendTransactionType","EndlessWalletTransactionType"]}