import { Handler, OAuth2Provider, OpenIDProvider } from '@salte-auth/salte-auth';
export declare class Popup extends Handler {
    constructor(config?: Popup.Config);
    get name(): string;
    get auto(): boolean;
    open(options: Handler.OpenOptions): Promise<OAuth2Provider.Validation | OpenIDProvider.Validation>;
}
export interface Popup {
    config: Popup.Config;
}
export declare namespace Popup {
    interface Config extends Handler.Config {
        /**
         * The popup window configuration.
         */
        window?: {
            /**
             * The name to attach to the popup window.
             *
             * @default '@salte-auth/popup'
             */
            name?: string;
            /**
             * The height of the popup window.
             *
             * @default 600
             */
            height?: number;
            /**
             * The width of the popup window.
             *
             * @default 600
             */
            width?: number;
        };
    }
}
