import { Window } from './Window';
/**
 * Client-side implementation of the {@link Window} utility API.
 */
export declare class ClientWindow extends Window {
    #private;
    static get $dependencies(): never[];
    /**
     * @inheritDoc
     */
    isClient(): boolean;
    /**
     * @inheritDoc
     */
    isCookieEnabled(): boolean;
    /**
     * @inheritDoc
     */
    hasSessionStorage(): boolean;
    /**
     * @inheritDoc
     */
    setTitle(title: string): void;
    /**
     * @inheritDoc
     */
    getWindow(): globalThis.Window;
    /**
     * @inheritDoc
     */
    getDocument(): globalThis.Document;
    /**
     * @inheritDoc
     */
    getScrollX(): number;
    /**
     * @inheritDoc
     */
    getScrollY(): number;
    /**
     * @inheritDoc
     */
    scrollTo(x: number, y: number): void;
    /**
     * @inheritDoc
     */
    getDomain(): string;
    /**
     * @inheritDoc
     */
    getHost(): string;
    /**
     * @inheritDoc
     */
    getPath(): string;
    /**
     * @inheritDoc
     */
    getUrl(): string;
    /**
     * @inheritDoc
     */
    getBody(): undefined | HTMLElement;
    /**
     * @inheritDoc
     */
    getElementById(id: string): null | HTMLElement;
    /**
     * @inheritDoc
     */
    getHistoryState(): History['state'];
    /**
     * @inheritDoc
     */
    querySelector<E extends Element = Element>(selector: string): E | null;
    /**
     * @inheritDoc
     */
    querySelectorAll<E extends Element = Element>(selector: string): NodeListOf<E>;
    /**
     * @inheritDoc
     */
    redirect(url: string): void;
    /**
     * @inheritDoc
     */
    pushState<T>(state: T, title: string, url?: string): void;
    /**
     * @inheritDoc
     */
    replaceState<T>(state: T, title: string, url?: string): void;
    /**
     * @inheritDoc
     */
    createCustomEvent<T>(name: string, options: CustomEventInit<T>): CustomEvent<T>;
    /**
     * @inheritDoc
     */
    bindEventListener<T extends EventTarget, E extends Event, S>(eventTarget: T, event: string, listener: (event: E) => void, options?: boolean | AddEventListenerOptions, scope?: S): void;
    /**
     * @inheritDoc
     */
    unbindEventListener<T extends EventTarget, E extends Event = Event, S = any>(eventTarget: T, event: string, listener: (event: E) => void, options?: boolean | EventListenerOptions, scope?: S): void;
    private _findScopedListener;
    private _getListenerCapture;
}
//# sourceMappingURL=ClientWindow.d.ts.map