import { AppHistoryEntry } from "./app-history-entry";
import { AppHistory as AppHistoryPrototype, AppHistoryEventMap, AppHistoryReloadOptions, AppHistoryResult, AppHistoryUpdateCurrentOptions, AppHistoryTransition as AppHistoryTransitionPrototype, AppHistoryNavigationOptions } from "./spec/app-history";
import { AppHistoryEventTarget } from "./app-history-event-target";
import { AppHistoryNavigateOptions } from "./create-app-history-transition";
export * from "./spec/app-history";
export interface AppHistoryOptions {
    initialUrl?: URL | string;
}
export declare class AppHistory extends AppHistoryEventTarget<AppHistoryEventMap> implements AppHistoryPrototype {
    #private;
    get canGoBack(): boolean;
    get canGoForward(): boolean;
    get current(): AppHistoryEntry<unknown>;
    get transition(): AppHistoryTransitionPrototype | undefined;
    constructor(options?: AppHistoryOptions);
    back(options?: AppHistoryNavigationOptions): AppHistoryResult;
    entries(): AppHistoryEntry[];
    forward(options?: AppHistoryNavigationOptions): AppHistoryResult;
    goTo(key: string, options?: AppHistoryNavigationOptions): AppHistoryResult;
    navigate(url: string, options?: AppHistoryNavigateOptions): AppHistoryResult;
    reload(options?: AppHistoryReloadOptions): AppHistoryResult;
    updateCurrent(options: AppHistoryUpdateCurrentOptions): Promise<void>;
    updateCurrent(options: AppHistoryUpdateCurrentOptions): void;
}
