UNPKG

starknetkit

Version:

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

44 lines (42 loc) 1.64 kB
import { StarknetWindowObject, TypedData, WalletEvents } from '@starknet-io/types-js'; import { CreateTRPCProxyClient } from '@trpc/client'; import { ConnectAndSignSessionOutput } from '../helpers/schema'; import { AppRouter } from '../helpers/trpc'; import { ApprovalRequest } from './types'; export declare const userEventHandlers: WalletEvents[]; export type Variant = "argentX" | "argentWebWallet"; export interface GetArgentStarknetWindowObject { id: Variant; icon: string; name: string; version: string; host: string; } export type LoginStatus = { isLoggedIn?: boolean; hasSession?: boolean; isPreauthorized?: boolean; }; export type Theme = "light" | "dark"; type ConnectWebwalletProps = { theme?: Theme; }; type ConnectAndSignSessionProps = ConnectWebwalletProps & { callbackData?: string; approvalRequests: ApprovalRequest[]; sessionTypedData: TypedData; }; export type WebWalletStarknetWindowObject = StarknetWindowObject & { getLoginStatus(): Promise<LoginStatus>; connectWebwallet(props?: ConnectWebwalletProps): Promise<{ account?: string[]; chainId?: string; }>; connectWebwalletSSO(token: string, authorizedPartyId?: string): Promise<{ account?: string[]; chainId?: string; }>; connectAndSignSession({ callbackData, approvalRequests, sessionTypedData, theme, }: ConnectAndSignSessionProps): Promise<ConnectAndSignSessionOutput>; }; export declare const getArgentStarknetWindowObject: (options: GetArgentStarknetWindowObject, proxyLink: CreateTRPCProxyClient<AppRouter>) => WebWalletStarknetWindowObject; export {};