fsl-authorization
Version:
## What id FSL ID
166 lines (165 loc) • 4.94 kB
TypeScript
import { BigNumber } from 'ethers';
import { SignatureLike } from '@ethersproject/bytes';
import { Transaction, TransactionInstruction, VersionedTransaction } from '@solana/web3.js';
import { IDomain, ITypes, IMessage } from './defination';
import SDKStorage from './store';
interface FSLLoginOptions {
responseType?: string;
appKey: string;
redirectUri?: string;
scope?: string;
state?: string;
usePopup?: boolean;
useModal?: boolean;
isApp?: boolean;
domain?: string;
uid?: number;
}
declare class FSLAuthorization {
responseType?: string;
appKey: string;
redirectUri?: string;
scope?: string;
state?: string;
usePopup?: boolean;
useModal?: boolean;
domain: string;
isApp?: boolean;
inWhiteList: boolean;
requestToken?: string;
sdkStorage?: SDKStorage;
uid?: number;
handling: boolean;
windowFeatures: string;
private constructor();
static init(opt: FSLLoginOptions): Promise<FSLAuthorization>;
getApproveDDL(): Promise<import("axios").AxiosResponse<any, any>>;
openAutoApprove(): Promise<import("axios").AxiosResponse<any, any>>;
closeAutoApprove(): Promise<import("axios").AxiosResponse<any, any>>;
signIn(args?: {
withState: boolean;
}): Promise<unknown>;
signOut(): Promise<import("axios").AxiosResponse<any, any>>;
signInV2(): Promise<unknown>;
checkAndAutoHandle<T>(uid: number | undefined, callUrl: URL, params: Record<string, any>, format?: (data: any) => T): Promise<T | any>;
static evmVerifyMessage(msg: string, signature: SignatureLike): string;
static evmVerifyTypedData(domain: IDomain, types: ITypes, message: IMessage, signature: SignatureLike): string;
callEvmSign(args: {
msg: any;
rpc?: string;
chainId: number;
chain?: string;
domain?: string;
uid?: number;
signDigest?: boolean;
}): Promise<any>;
callEvmSignDigest(args: {
msg: any;
rpc?: string;
chainId: number;
chain?: string;
domain?: string;
uid?: number;
}): Promise<any>;
signTypedData(args: {
domain: IDomain;
types: ITypes;
message: IMessage;
chainId: number;
mockDomain?: string;
chain?: string;
uid?: number;
}): Promise<any>;
callEvmContractByCallData(args: {
contractAddress: string;
callData: string;
chainId: number;
gasLimit: string;
value?: string;
chain?: string;
rpc?: string;
domain?: string;
nonce?: number;
onlySign?: boolean;
maxPriorityFeePerGasValue?: BigNumber;
maxFeePerGasValue?: BigNumber;
uid?: number;
confirmed?: boolean;
}): Promise<any>;
signCallDataTransaction(args: {
contractAddress: string;
callData: string;
chainId: number;
gasLimit: string;
value?: string;
chain?: string;
rpc?: string;
domain?: string;
nonce?: number;
maxPriorityFeePerGasValue?: BigNumber;
maxFeePerGasValue?: BigNumber;
uid?: number;
}): Promise<any>;
signSolMessage(args: {
msg: string;
domain?: string;
uid?: number;
}): Promise<any>;
callSolInstructions(args: {
instructions: TransactionInstruction[];
rpc?: string;
unitLimit?: number;
unitPrice?: number;
domain?: string;
onlySign?: boolean;
uid?: number;
}): Promise<any>;
signSolInstructions(args: {
instructions: any[];
rpc?: string;
unitLimit?: number;
unitPrice?: number;
domain?: string;
uid?: number;
}): Promise<any>;
signSolTransaction(args: {
transactions: Array<Transaction> | Array<VersionedTransaction>;
uid?: number;
}): Promise<Array<Transaction> | Array<VersionedTransaction>>;
callEvmContract(args: {
contractAddress: string;
methodName: string;
abi?: any;
chainId: number;
chain?: string;
value?: string;
gasLimit: string;
params?: any[];
to?: string;
rpc?: string;
domain?: string;
nonce?: number;
maxPriorityFeePerGasValue?: BigNumber;
maxFeePerGasValue?: BigNumber;
onlySign?: boolean;
uid?: number;
}): Promise<any>;
signEvmContract(args: {
contractAddress: string;
methodName: string;
abi?: any;
chainId: number;
chain?: string;
value?: string;
gasLimit: string;
params?: any[];
to?: string;
rpc?: string;
domain?: string;
nonce?: number;
maxPriorityFeePerGasValue?: BigNumber;
maxFeePerGasValue?: BigNumber;
uid?: number;
}): Promise<any>;
}
export default FSLAuthorization;