export default abstract class HistoryBase {
    private _baseURL;
    protected _stack: string[];
    private _defaultRoute;
    protected readonly _routerId: string;
    constructor(_routerId: string, _defaultRoute: string | null, _baseURL: URL);
    protected abstract set next(_next: string | null);
    protected set defaultRoute(_defaultRoute: string);
    abstract get current(): string;
    get length(): number;
    get defaultRoute(): string;
    abstract canGoBack(): boolean;
    abstract get next(): string | null;
    abstract get previous(): string | null;
    get isEmpty(): boolean;
    get baseURL(): URL;
    get state(): {
        set<V>(key: string | number | symbol, value: V): boolean;
        get<V_1>(key: string | number | symbol): V_1 | null;
        has(key: string | number | symbol): boolean;
        delete(key: string | number | symbol): boolean;
        keys(): string[];
        values(): unknown[];
        clear(): void;
        readonly length: number;
    };
    protected pushState(data: any, unused: string, url?: string | URL | null | undefined): void;
    protected replaceState(data: any, unused: string, url?: string | URL | null | undefined): void;
    protected static getURL(route: string, baseURL: URL, search?: string): URL;
}
