UNPKG

@near-wallet-selector/my-near-wallet

Version:
66 lines (65 loc) 2.56 kB
import type { Action, FinalExecutionOutcome, Network, SignedMessage, SignMessageParams, Transaction } from "@near-wallet-selector/core"; import { transactions } from "near-api-js"; import type { KeyPairString, PublicKey } from "near-api-js/lib/utils/index.js"; import type { JsonRpcProvider } from "near-api-js/lib/providers/index.js"; interface WalletMessage { status: "success" | "failure" | "pending"; transactionHashes?: string; error?: string; [key: string]: unknown; signedRequest?: SignedMessage; errorMessage?: string; errorCode?: string; } interface FunctionCallKey { privateKey: KeyPairString; contractId: string; methods: Array<string>; } export declare class MyNearWalletConnector { walletUrl: string; signedAccountId: string; functionCallKey: FunctionCallKey | null; provider: JsonRpcProvider; network: Network; constructor(walletUrl: string, network: Network); getAccountId(): string; getPublicKey(): PublicKey | undefined; isSignedIn(): boolean; signOut(): void; requestSignIn({ contractId, methodNames, }: { contractId?: string; methodNames?: Array<string>; }): Promise<Array<{ accountId: string; publicKey: string; }>>; requestSignInUrl({ contractId, methodNames, }: { contractId?: string; methodNames?: Array<string>; }): Promise<string>; signMessage({ message, nonce, recipient, callbackUrl, state, }: SignMessageParams): Promise<{ accountId: string; publicKey: string; signature: string; }>; signAndSendTransactions(transactionsWS: Array<Transaction>): Promise<Array<FinalExecutionOutcome>>; signAndSendTransaction({ receiverId, actions, }: { receiverId: string; actions: Array<Action>; }): Promise<FinalExecutionOutcome>; completeTransaction({ receiverId, actions, }: { receiverId: string; actions: Array<Action>; }): Promise<transactions.Transaction>; signAndSendTransactionsMNW(txs: Array<transactions.Transaction>): Promise<Array<FinalExecutionOutcome>>; storedKeyCanSign(receiverId: string, actions: Array<Action>): boolean; signUsingKeyPair({ receiverId, actions, }: { receiverId: string; actions: Array<Action>; }): Promise<FinalExecutionOutcome>; requestSignTransactionsUrl(txs: Array<transactions.Transaction>): string; handlePopupTransaction<T>(url: string, callback: (result: WalletMessage) => T): Promise<T>; private setupMessageHandler; } export {};