export { EMBEDDED_WALLET_ID, EMBEDDED_WALLET_URL_DEV, EMBEDDED_WALLET_URL_PROD, LuksoConnector, LuksoConnectorConfig, UP_EXTENSION_ID, fromWagmiConnector, fromWagmiConnectors, setupLuksoConnector } from '@lukso/up-modal'; import { WalletConnector, ConnectModal } from '@lukso/up-modal/connect-modal'; export { ConnectModal, ConnectModalSetup, ConnectModalTheme, ConnectionModalView, WagmiConnection, WagmiConnector, WalletConnector, disconnect, getConnection, getWagmiSetup, setupConnectModal, wagmi, watchConnection } from '@lukso/up-modal/connect-modal'; export { AccountModal } from './account-modal.js'; import { C as ConnectorConfig, D as DraggableAvatar, a as ConnectionState } from './avatar-CQkubMTK.js'; export { A as AddressData, b as AvatarOptions, W as WalletProvider, c as createAvatar } from './avatar-CQkubMTK.js'; export { BackupModal } from './backup-modal.js'; export { RestoreModal } from './restore-modal.js'; import 'lit'; import './index-D2orHGFi.js'; import '@lukso/passkey-auth'; /** * Enhanced Popup System for UP Connector * Provides unified interface for both popup windows and modal dialogs */ interface PopupRequest { mode: 'popup' | 'modal'; url?: string; size?: { width: number; height: number; }; position?: 'center' | 'top-right'; allowedOrigins?: string[]; reuseExisting?: boolean; } interface PopupInstance { show(): Promise; hide(): void; close(): void; postMessage(data: any): void; onMessage(handler: (data: any) => void): void; removeMessageHandler(handler: (data: any) => void): void; isVisible: boolean; isClosed: boolean; contentWindow?: Window; on(event: 'show' | 'hide' | 'close' | 'message', handler: (...args: any[]) => void): void; off(event: 'show' | 'hide' | 'close' | 'message', handler: (...args: any[]) => void): void; } interface UIDelegate { createPopup(request: PopupRequest): PopupInstance; showPopup(request: PopupRequest): Promise; closeAll(): void; } declare class PopupEventEmitter { private handlers; on(event: string, handler: (...args: any[]) => void): void; off(event: string, handler: (...args: any[]) => void): void; emit(event: string, ...args: any[]): void; clear(): void; } /** * Base class for popup instances */ declare abstract class BasePopupInstance implements PopupInstance { protected request: PopupRequest; protected events: PopupEventEmitter; protected messageHandlers: Set<(data: any) => void>; protected _isClosed: boolean; protected _isVisible: boolean; constructor(request: PopupRequest); abstract show(): Promise; abstract hide(): void; abstract close(): void; abstract get contentWindow(): Window | undefined; get isVisible(): boolean; get isClosed(): boolean; postMessage(data: any): void; onMessage(handler: (data: any) => void): void; removeMessageHandler(handler: (data: any) => void): void; protected handleMessage(data: any): void; on(event: 'show' | 'hide' | 'close' | 'message', handler: (...args: any[]) => void): void; off(event: 'show' | 'hide' | 'close' | 'message', handler: (...args: any[]) => void): void; protected cleanup(): void; } /** * Modal popup implementation (iframe in modal dialog) */ declare class ModalPopupInstance extends BasePopupInstance { private modalElement?; private iframeElement?; private messageListener?; show(): Promise; hide(): void; close(): void; get contentWindow(): Window | undefined; private createElement; private createStyles; } /** * Window popup implementation (actual popup window) */ declare class WindowPopupInstance extends BasePopupInstance { private popupWindow; private messageListener?; show(): Promise; hide(): void; close(): void; get contentWindow(): Window | undefined; get isVisible(): boolean; private createPopupWindow; private getPositionFeatures; } /** * UP Connector - Main class that orchestrates avatar and modal * Provides smooth avatar-to-modal animations and connection state management * * NOTE: This connector uses Lit-based modal components: * - for wallet connection (configured via setupConnectModal()) * - for account management (shows address, chain, disconnect) * * Current implementation status: * - ✅ Avatar integration (DraggableAvatar with IconView) * - ✅ Connection modal (Lit-based ConnectModal) * - ✅ Account management modal (Lit-based AccountModal) * - ✅ Wagmi synchronization * * The legacy ConnectorModal (vanilla JS) has been removed. The config.modal property * is deprecated and has no effect - use setupConnectModal() instead. * * Users can pre-place modal components in DOM for custom positioning: * - Place or anywhere in your HTML * - The connector will find and reuse existing modals instead of creating new ones */ declare class UPConnector { private config; private avatar?; private connectModal?; private accountModal?; private connectionState; private connectedAddress?; private connectedProvider?; private connectedChainId?; private wagmiUnsubscribe?; connectors: WalletConnector[]; constructor(config?: ConnectorConfig); private init; /** * Start syncing with wagmi * Checks current state and subscribes to changes */ /** * Update global Lukso config for address resolution */ private updateLuksoConfig; private startWagmiSync; private createAvatar; private handleAvatarClick; private showConnectionModal; private showAccountModal; private handleConnection; private handleDisconnection; private setConnectionState; private updateAvatarState; private tryAutoConnect; private saveConnectionState; private loadConnectionState; private clearConnectionState; getAvatar(): DraggableAvatar | undefined; /** * @deprecated Legacy modal removed. Use getConnectModal() or create account modal */ getModal(): undefined; getConnectModal(): ConnectModal | undefined; /** * @deprecated Use setupConnectModal() instead to configure wagmi connectors globally */ setConnectors(connectors: WalletConnector[]): void; connect(providerId?: string): Promise; disconnect(): void; getConnectionState(): ConnectionState; getConnectedAddress(): string | undefined; getConnectedProvider(): any; isConnected(): boolean; showModal(): void; hideModal(): void; updateConfig(config: Partial): void; destroy(): void; } /** * Factory function for creating UP Connector instances */ declare function createConnector(config?: ConnectorConfig): UPConnector; export { ConnectionState, ConnectorConfig, DraggableAvatar, ModalPopupInstance, type PopupInstance, type PopupRequest, type UIDelegate, UPConnector, WindowPopupInstance, createConnector, createConnector as default };