import { ProviderEventMap, ProviderInterface, RequestArguments } from './types'; export type ProviderEventCallback = ProviderInterface['emit']; export type SAManagerProviderOptions = { origin?: string; debug?: boolean; }; export declare class SAManagerProvider implements ProviderInterface { private readonly communicator; private readonly keyManager; private debug; private eventHandlers; private accounts; private chainId; private origin; constructor(options?: SAManagerProviderOptions); /** * request() → handshake() (if needed) → sendRequestToPopup() * sendRequestToPopup: sendEncryptedRequest() -> decryptResponseMessage() → handleResponse() */ request(request: RequestArguments): Promise; disconnect(): Promise; emit(event: K, payload: ProviderEventMap[K]): void; on(event: K, handler: (payload: ProviderEventMap[K]) => void): void; removeListener(event: K, handler: (payload: ProviderEventMap[K]) => void): void; private log; private updateAccounts; private updateChainId; private hasAccount; /** * Handle popup disconnect - clear shared secret */ private handlePopupDisconnect; private handshake; private sendRequestToPopup; private sendEncryptedRequest; private createRequestMessage; private decryptResponseMessage; private handleResponse; } export declare function announceSAManagerProvider({ origin, debug }: SAManagerProviderOptions): void; //# sourceMappingURL=SAManagerProvider.d.ts.map