import type { Timestamp } from "../../../types/web3"; import type { RpcRequestParams } from "../../../types/rpc"; import type { ProviderCallContractParams, SignParams, SignResponse } from '../base-provider'; import { Contract } from "../../contract"; import { WalletMethods } from "../../../types/web3"; declare global { const my: any; } interface ProviderOptions { chainId: string; } interface ProviderAccount { did: string; timestamp: Timestamp; signature: string; } interface AlipayMiniPocketResponse { id: string; } export type PocketRequestAccountsResponse = { did: string; signature: string; timestamp: number; }[]; export interface PocketCallContractResponse { resultCode: number; returnValues?: any[]; txHash?: string; } interface GetAuthorizeResultResponse { method?: WalletMethods; error?: Error; id?: string; data?: PocketCallContractResponse | PocketRequestAccountsResponse | SignResponse; } export { SignResponse }; export declare class AlipayMiniProvider { majorVersion: number; chainId: string; accounts: ProviderAccount[]; static WalletAppId: string; constructor({ chainId }: ProviderOptions); static getAuthorizeResult(): GetAuthorizeResultResponse; static getAndriodAuthorizeResult(): void; request({ method, params }: RpcRequestParams): Promise; requestAccounts(): Promise; callContract(contract: Contract, { methodName, args, gas, blockNumber, local }: ProviderCallContractParams): Promise; sign(params: SignParams): Promise; }