import type { ILocationStrategy } from './ILocationStrategy';
/**
 * A location strategy for hash-based routing.
 *
 * URLs follow the pattern `http://example.com/#/path?query#fragment`.
 * The application path lives inside `window.location.hash`, after the `#` prefix.
 *
 * This strategy is suitable for static file hosting (e.g. GitHub Pages, S3)
 * where every request must be served by the same `index.html`.
 *
 * @public
 */
export declare class HashLocationStrategy implements ILocationStrategy {
    /** @inheritdoc */
    get pathname(): string;
    /** @inheritdoc */
    get href(): string;
    /** @inheritdoc */
    get search(): string;
    /** @inheritdoc */
    get hash(): string;
    /** @inheritdoc */
    get hostname(): string;
    /** @inheritdoc */
    get origin(): string;
    /** @inheritdoc */
    get host(): string;
    /** @inheritdoc */
    get port(): string;
    /** @inheritdoc */
    get protocol(): string;
    /** @inheritdoc */
    pushState(path: string): void;
    /** @inheritdoc */
    replaceState(path: string): void;
    /** @inheritdoc */
    prepareExternalUrl(pathname: string): string;
    /** @inheritdoc */
    getSearchParam(name: string): string | null;
    /** @inheritdoc */
    setSearchParam(name: string, value: string): void;
    /** @inheritdoc */
    deleteSearchParam(name: string): void;
    /**
     * Parses query params from inside the hash fragment (e.g. `#/path?key=val`).
     */
    private getSearchParams;
    /**
     * Writes query params back into the hash fragment via `history.replaceState`.
     */
    private applySearchParams;
}
//# sourceMappingURL=HashLocationStrategy.d.ts.map