import { Event, EventTarget, ProgressEvent } from '@gjsify/dom-events'; export declare const UNSENT = 0; export declare const OPENED = 1; export declare const HEADERS_RECEIVED = 2; export declare const LOADING = 3; export declare const DONE = 4; type EventHandler = ((event: ProgressEvent) => void) | null; export declare class XMLHttpRequest extends EventTarget { static UNSENT: number; static OPENED: number; static HEADERS_RECEIVED: number; static LOADING: number; static DONE: number; readonly UNSENT = 0; readonly OPENED = 1; readonly HEADERS_RECEIVED = 2; readonly LOADING = 3; readonly DONE = 4; readyState: number; status: number; statusText: string; responseType: string; responseText: string; response: unknown; responseURL: string; withCredentials: boolean; timeout: number; upload: XMLHttpRequestUpload; onreadystatechange: ((event: Event) => void) | null; onload: EventHandler; onerror: EventHandler; onabort: EventHandler; ontimeout: EventHandler; onloadstart: EventHandler; onloadend: EventHandler; onprogress: EventHandler; private _method; private _url; private _headers; private _responseHeaders; private _controller; private _aborted; private _timeoutId; open(method: string, url: string, _async?: boolean, _user?: string | null, _password?: string | null): void; setRequestHeader(header: string, value: string): void; getResponseHeader(header: string): string | null; getAllResponseHeaders(): string; send(body?: Document | XMLHttpRequestBodyInit | null): void; abort(): void; overrideMimeType(_mime: string): void; private _onTimeout; private _setReadyState; } export declare class XMLHttpRequestUpload extends EventTarget { onprogress: EventHandler; onloadstart: EventHandler; onloadend: EventHandler; onload: EventHandler; onerror: EventHandler; onabort: EventHandler; ontimeout: EventHandler; } export {};