import { ConnectedStarknetWindowObject, StarknetWindowObject } from "./StarknetWindowObject"; import { WalletProvider } from "./discovery"; import { IStorageWrapper } from "./localStorageStore"; import { FilterList } from "./wallet/filter"; import { Sort } from "./wallet/sort"; export type { AccountChangeEventHandler, AddStarknetChainParameters, ConnectedStarknetWindowObject, NetworkChangeEventHandler, RpcMessage, StarknetWindowObject, SwitchStarknetChainParameter, WalletEvents, WatchAssetParameters, DisconnectedStarknetWindowObject, IStarknetWindowObject, } from "./StarknetWindowObject"; export type { WalletProvider, BrowserStoreVersion, OperatingSystemStoreVersion, } from "./discovery"; export interface GetStarknetOptions { windowObject: Record; isWalletObject: (wallet: any) => boolean; storageFactoryImplementation: (name: string) => IStorageWrapper; } export interface GetWalletOptions { sort?: Sort; include?: FilterList; exclude?: FilterList; } export interface DisconnectOptions { clearLastWallet?: boolean; } interface GetStarknetResult { getAvailableWallets: (options?: GetWalletOptions) => Promise; getPreAuthorizedWallets: (options?: GetWalletOptions) => Promise; getDiscoveryWallets: (options?: GetWalletOptions) => Promise; getLastConnectedWallet: () => Promise; enable: (wallet: StarknetWindowObject, options?: { starknetVersion?: "v4" | "v5"; }) => Promise; disconnect: (options?: DisconnectOptions) => Promise; } export declare function getStarknet(options?: Partial): GetStarknetResult; export { ssrSafeWindow } from "./utils"; declare const _default: GetStarknetResult; export default _default;