UNPKG

starknetkit

Version:

<!-- logo --> <p align="center"> <img width='300' src="https://starknetkit-website-git-blo-1541-argentlabs.vercel.app/starknetKit-logo.svg"> </p>

56 lines (54 loc) 2.69 kB
import { AccountChangeEventHandler, RequestFnCall, RpcMessage, RpcTypeToMessageMap, StarknetWindowObject, TypedData } from '@starknet-io/types-js'; import { AccountInterface, ProviderInterface, ProviderOptions } from 'starknet'; import { Connector, ConnectArgs, ConnectorData, ConnectorIcons } from '../connector'; import { ConnectAndSignSessionError, WebwalletError } from './errors'; import { Theme, WebWalletStarknetWindowObject } from './starknetWindowObject/argentStarknetWindowObject'; import { ApprovalRequest } from './starknetWindowObject/types'; declare const WEBWALLET_LOGOUT_EVENT = "webwallet_logout"; interface WebWalletConnectorOptions { url?: string; theme?: Theme; ssoToken?: string; authorizedPartyId?: string; } export declare class WebWalletConnector extends Connector { private _wallet; private _options; constructor(options?: WebWalletConnectorOptions); available(): boolean; ready(): Promise<boolean>; get id(): string; get name(): string; get icon(): ConnectorIcons; get wallet(): StarknetWindowObject; get title(): string; get subtitle(): string; connectAndSignSession({ callbackData, approvalRequests, sessionTypedData, }: { callbackData?: string; approvalRequests: ApprovalRequest[]; sessionTypedData: TypedData; }): Promise<{ chainId?: string | undefined; signature?: string[] | undefined; account?: string[] | undefined; approvalTransactionHash?: string | undefined; deploymentPayload?: any; approvalRequestsCalls?: { contractAddress: string; entrypoint: string; calldata?: (string | number | bigint | (string | number | bigint)[])[] | undefined; }[] | undefined; errorCode?: "USER_REJECTED" | "ACCOUNT_NOT_DEPLOYED" | "NOT_ENOUGH_BALANCE" | "NOT_ENOUGH_BALANCE_DEPLOYMENT" | "GENERIC_ERROR" | undefined; }>; connect(_args?: ConnectArgs): Promise<ConnectorData>; request<T extends RpcMessage["type"]>(call: RequestFnCall<T>): Promise<RpcTypeToMessageMap[T]["result"]>; disconnect(): Promise<void>; account(provider: ProviderOptions | ProviderInterface): Promise<AccountInterface>; chainId(): Promise<bigint>; initEventListener(accountChangeCb: AccountChangeEventHandler): Promise<void>; removeEventListener(accountChangeCb: AccountChangeEventHandler): Promise<void>; private ensureWallet; } declare const handleWebwalletLogoutEvent: (callback: () => void) => void; export { ConnectAndSignSessionError, handleWebwalletLogoutEvent, WEBWALLET_LOGOUT_EVENT, WebwalletError, }; export type { ApprovalRequest, WebWalletStarknetWindowObject };