@dooboostore/dom-render
Version:
html view template engine
68 lines • 2.81 kB
TypeScript
import { ConvertUtils } from '@dooboostore/core/convert/ConvertUtils';
import ToURLSearchParamsParams = ConvertUtils.ToURLSearchParamsParams;
export type RouteData = {
path: string;
url: string;
data?: any;
searchParams: URLSearchParams;
pathData?: any;
router: Router;
};
export type RouterConfig<T = any> = {
rootObject?: T;
window: Window;
disableAttach?: boolean;
};
export type RouteAction = string | {
path?: string;
searchParams?: ToURLSearchParamsParams;
};
export declare abstract class Router<T = any> {
private changeCallbacks;
private _config;
get searchParamObject(): {
[key: string]: string | string[];
};
get config(): RouterConfig<T>;
constructor(config: RouterConfig<any>);
getSearchFirstParamsObject<T = any>(defaultValue?: T): T & import("@dooboostore/core/types").FieldType<T, string>;
getHashSearchFirstParamsObject<T = any>(): import("@dooboostore/core/types").FieldType<T, string>;
addChangeCallback(callback: (routeData: RouteData) => void): void;
attach(): Promise<void>;
testRegexp(regexp: string): boolean;
test(urlExpression: string): boolean;
getRouteData(urlExpression?: string): RouteData;
pushState(data: any, title: string, path: string): void;
replaceState(data: any, title: string, path: string): void;
dispatchPopStateEvent(): void;
reload(): void;
getData(): any;
getPathData(urlExpression: string, currentUrl?: string): any;
go(config: {
path: RouteAction;
data?: any;
replace?: boolean;
title?: string;
disabledPopEvent?: boolean;
} | string): Promise<void>;
toUrl(data: RouteAction): string;
abstract push(path: RouteAction, data?: any, title?: string): void;
abstract replace(path: RouteAction, data?: any, title?: string): void;
abstract pushDeleteSearchParam(name: string | string[], data?: any, title?: string): void;
abstract pushDeleteHashSearchParam(name: string | string[], data?: any, title?: string): void;
abstract pushAddSearchParam(params: [[string, string]], data?: any, title?: string): void;
abstract replaceDeleteSearchParam(name: string | string[], data?: any, title?: string): void;
abstract replaceDeleteHashSearchParam(name: string | string[], data?: any, title?: string): void;
abstract replaceAddSearchParam(params: [[string, string]], data?: any, title?: string): void;
abstract getSearchParams(data?: {
delete?: string[];
append?: [[string, string]];
}): URLSearchParams;
abstract getHashSearchParams(data?: {
delete?: string[];
append?: [[string, string]];
}): URLSearchParams;
abstract getUrl(): string;
abstract getPath(): string;
}
//# sourceMappingURL=Router.d.ts.map