ember-source
Version:
A JavaScript framework for creating ambitious web applications
35 lines (33 loc) • 1.78 kB
TypeScript
declare module '@ember/routing/lib/routing-service' {
/**
@module ember
*/
import Service from "@ember/service";
import type { ModelFor } from "router_js";
import type Route from "@ember/routing/route";
import EmberRouter from "@ember/routing/router";
import type RouterState from "@ember/routing/lib/router_state";
import { ROUTER } from "@ember/routing/router-service";
/**
The Routing service is used by LinkTo, and provides facilities for
the component/view layer to interact with the router.
This is a private service for internal usage only. For public usage,
refer to the `Router` service.
@private
@class RoutingService
*/
export default class RoutingService<R extends Route> extends Service {
targetState: EmberRouter["targetState"];
currentState: EmberRouter["currentState"];
currentRouteName: EmberRouter["currentRouteName"];
currentPath: EmberRouter["currentPath"];
[ROUTER]?: EmberRouter;
get router(): EmberRouter;
hasRoute(routeName: string): boolean;
transitionTo(routeName: string, models: ModelFor<R>[], queryParams: Record<string, unknown>, shouldReplace: boolean): import("router_js").Transition;
normalizeQueryParams(routeName: string, models: ModelFor<R>[], queryParams: Record<string, unknown>): void;
_generateURL(routeName: string, models: ModelFor<R>[], queryParams: Record<string, unknown>): string;
generateURL(routeName: string, models: ModelFor<R>[], queryParams: Record<string, unknown>): string | undefined;
isActiveForRoute(contexts: ModelFor<R>[], queryParams: Record<string, unknown> | undefined, routeName: string, routerState: RouterState): boolean;
}
}