@uxuycom/web3-tg-sdk
Version:
web3 sdk for tg
92 lines (91 loc) • 2.97 kB
TypeScript
import EventEmitter from 'eventemitter3';
import { PROVIDER_ALLIANCE } from '../types';
import { Account, DAPP_METHODS, initOptions } from '../types';
import { Storage } from '../utils/storage';
export type AbstractAdapterOptions = {
protocol: PROVIDER_ALLIANCE;
};
export declare enum UxuyInternalEventNames {
Connected = "uxuyConnected",
Disconnected = "uxuyDisconnected",
AccountChanged = "uxuyAccountChanged",
BridgeError = "uxuyBridgeError"
}
export declare enum EventNames {
Connect = "connect",
Disconnect = "disconnect",
AccountChanged = "accountChanged",
AccountsChanged = "accountsChanged"
}
interface RequestOptions {
account?: Account;
metaData?: initOptions["metaData"];
timeStamp?: number;
originPayload?: string;
}
export default class AbstractAdapter extends EventEmitter {
protected storage: Storage;
protected protocol: PROVIDER_ALLIANCE;
protected httpBridge: import("../bridge").HttpBridge;
protected connect_direct_link?: string;
protected defaultAccount?: Account;
protected metaData?: initOptions["metaData"];
protected internalEvent: EventEmitter<string | symbol, any>;
constructor({ protocol }: AbstractAdapterOptions);
get _account(): Account | undefined;
set _account(account: Account | undefined);
get _accounts(): {
[key: string]: Account;
} | undefined;
set _accounts(accounts: {
[key: string]: Account;
} | undefined);
listenDisconnect(): void;
disconnectLocal(): void;
disconnect(): Promise<void>;
dealUndoneRequest(): void;
getAppInfo(): {
id: string;
version: string;
name: string;
homepage: string;
logo: string;
description: string;
downloadLinks: {
android: string;
googlePlay: string;
ios: string;
appleStore: string;
testflight: string;
telegram: string;
browserExtension: {
chrome: string;
edge: string;
};
};
deepLinks: {
scheme: string;
universallink: string;
direct_link: string;
};
};
filterAccounts(accounts: {
[key: string]: Account;
}, alliances?: PROVIDER_ALLIANCE[]): {
[key: string]: Account;
};
storeAllAccounts(accounts: {
[key: string]: Account;
}): {
[key: string]: Account;
};
deleteAllAccounts(): void;
storeAccount(availableAccounts: {
[key: string]: Account;
}): void;
protected isConnectMethod(method: DAPP_METHODS): method is DAPP_METHODS.DAPP_CONNECT_ACCOUNTS;
protected isDisconnectMethod(method: DAPP_METHODS): method is DAPP_METHODS.DAPP_DISCONNECT;
protected proxyResponse(reponsePayload: any): any;
protected _request(method: DAPP_METHODS, params: any, requestOptions?: RequestOptions): Promise<unknown>;
}
export {};