UNPKG

1.94 kBTypeScriptView Raw
1declare module '@ember/routing/lib/utils' {
2 import type { ControllerQueryParam, ControllerQueryParamType } from '@ember/controller';
3 import type Router from 'router_js';
4 import type { ExtendedInternalRouteInfo } from '@ember/routing/route';
5 import type Route from '@ember/routing/route';
6 import type EmberRouter from '@ember/routing/router';
7 export type ExpandedControllerQueryParam = {
8 as: string | null;
9 scope: string;
10 type?: ControllerQueryParamType;
11 };
12 export type NamedRouteArgs =
13 | [routeNameOrUrl: string, ...modelsAndOptions: [...unknown[], RouteOptions]]
14 | [routeNameOrUrl: string, ...models: unknown[]];
15 export type UnnamedRouteArgs =
16 | [...modelsAndOptions: [...unknown[], RouteOptions]]
17 | [...models: unknown[]]
18 | [options: RouteOptions];
19 export type RouteArgs = NamedRouteArgs | UnnamedRouteArgs;
20 type ExtractedArgs = {
21 routeName: string | undefined;
22 models: unknown[];
23 queryParams: Record<string, unknown>;
24 };
25 export type RouteOptions = {
26 queryParams: Record<string, unknown>;
27 };
28 export function extractRouteArgs(args: RouteArgs): ExtractedArgs;
29 export function getActiveTargetName(router: Router<Route>): string;
30 export function stashParamNames(
31 router: EmberRouter,
32 routeInfos: Array<ExtendedInternalRouteInfo<Route>> & {
33 _namesStashed?: boolean;
34 }
35 ): void;
36 export function calculateCacheKey(
37 prefix: string,
38 parts: string[] | undefined,
39 values: {} | null
40 ): string;
41 export function normalizeControllerQueryParams(
42 queryParams: Readonly<ControllerQueryParam[]>
43 ): Record<string, ExpandedControllerQueryParam>;
44 export function resemblesURL(str: unknown): str is string;
45 export function prefixRouteNameArg<T extends NamedRouteArgs | UnnamedRouteArgs>(
46 route: Route,
47 args: T
48 ): T;
49 export function shallowEqual<A extends object, B extends object>(a: A, b: B): boolean;
50 export {};
51}