import type { AccountInterface } from "starknet";
export interface StarknetWindowObject {
    icon: string;
    id: string;
    name: string;
    starknetJsVersion?: string;
    version?: string;
    enable: (options?: {
        starknetVersion?: "v4" | "v5";
    }) => Promise<void>;
    isConnected: boolean;
    isPreauthorized: () => Promise<boolean>;
    account: AccountInterface;
    selectedAddress?: `0x${string}`;
    chainId?: string;
    on: (event: "accountsChanged" | "networkChanged", handler: () => void) => void;
    off: (event: "accountsChanged" | "networkChanged", handler: () => void) => void;
    request: (options: {
        type: string;
        [key: string]: unknown;
    }) => Promise<unknown>;
}
interface ConnectorData {
    account: `0x${string}`;
    chainId: bigint;
}
interface ConnectResult {
    wallet: StarknetWindowObject;
    connectorData: ConnectorData;
}
export declare const chainIdToBigInt: (id: string) => bigint;
export declare const connect: () => Promise<ConnectResult | null>;
export declare function disconnect(): void;
export {};
