// Type definitions for Angular JS 1.1.5+ (ui.router module)
|
|
// Project: https://github.com/angular-ui/ui-router
|
|
// Definitions by: Michel Salib <https://github.com/michelsalib>
|
|
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
|
|
|
declare module ng.ui {
|
|
|
|
interface IState {
|
|
name?: string;
|
|
template?: string;
|
|
templateUrl?: any; // string || () => string
|
|
templateProvider?: any; // () => string || IPromise<string>
|
|
controller?: any;
|
|
controllerAs?: string;
|
|
controllerProvider?: any;
|
|
resolve?: {};
|
|
url?: string;
|
|
params?: any;
|
|
views?: {};
|
|
abstract?: boolean;
|
|
onEnter?: (...args: any[]) => void;
|
|
onExit?: (...args: any[]) => void;
|
|
data?: any;
|
|
reloadOnSearch?: boolean;
|
|
}
|
|
|
|
interface ITypedState<T> extends IState {
|
|
data?: T;
|
|
}
|
|
|
|
interface IStateProvider extends IServiceProvider {
|
|
state(name: string, config: IState): IStateProvider;
|
|
state(config: IState): IStateProvider;
|
|
decorator(name?: string, decorator?: (state: IState, parent: Function) => any): any;
|
|
}
|
|
|
|
interface IUrlMatcher {
|
|
concat(pattern: string): IUrlMatcher;
|
|
exec(path: string, searchParams: {}): {};
|
|
parameters(): string[];
|
|
format(values: {}): string;
|
|
}
|
|
|
|
interface IUrlMatcherFactory {
|
|
compile(pattern: string): IUrlMatcher;
|
|
isMatcher(o: any): boolean;
|
|
}
|
|
|
|
interface IUrlRouterProvider extends IServiceProvider {
|
|
when(whenPath: RegExp, handler: Function): IUrlRouterProvider;
|
|
when(whenPath: RegExp, handler: any[]): IUrlRouterProvider;
|
|
when(whenPath: RegExp, toPath: string): IUrlRouterProvider;
|
|
when(whenPath: IUrlMatcher, hanlder: Function): IUrlRouterProvider;
|
|
when(whenPath: IUrlMatcher, handler: any[]): IUrlRouterProvider;
|
|
when(whenPath: IUrlMatcher, toPath: string): IUrlRouterProvider;
|
|
when(whenPath: string, handler: Function): IUrlRouterProvider;
|
|
when(whenPath: string, handler: any[]): IUrlRouterProvider;
|
|
when(whenPath: string, toPath: string): IUrlRouterProvider;
|
|
otherwise(handler: Function): IUrlRouterProvider;
|
|
otherwise(handler: any[]): IUrlRouterProvider;
|
|
otherwise(path: string): IUrlRouterProvider;
|
|
rule(handler: Function): IUrlRouterProvider;
|
|
rule(handler: any[]): IUrlRouterProvider;
|
|
}
|
|
|
|
interface IStateOptions {
|
|
location?: any;
|
|
inherit?: boolean;
|
|
relative?: IState;
|
|
notify?: boolean;
|
|
reload?: boolean;
|
|
}
|
|
|
|
interface IHrefOptions {
|
|
lossy?: boolean;
|
|
inherit?: boolean;
|
|
relative?: IState;
|
|
absolute?: boolean;
|
|
}
|
|
|
|
interface IStateService {
|
|
go(to: string, params?: {}, options?: IStateOptions): IPromise<any>;
|
|
transitionTo(state: string, params?: {}, updateLocation?: boolean): void;
|
|
transitionTo(state: string, params?: {}, options?: IStateOptions): void;
|
|
includes(state: string, params?: {}): boolean;
|
|
is(state:string, params?: {}): boolean;
|
|
is(state: IState, params?: {}): boolean;
|
|
href(state: IState, params?: {}, options?: IHrefOptions): string;
|
|
href(state: string, params?: {}, options?: IHrefOptions): string;
|
|
get(state: string): IState;
|
|
get(): IState[];
|
|
current: IState;
|
|
params: any;
|
|
reload(): void;
|
|
}
|
|
|
|
interface IStateParamsService {
|
|
[key: string]: any;
|
|
}
|
|
|
|
interface IStateParams {
|
|
[key: string]: any;
|
|
}
|
|
|
|
interface IUrlRouterService {
|
|
/*
|
|
* Triggers an update; the same update that happens when the address bar
|
|
* url changes, aka $locationChangeSuccess.
|
|
*
|
|
* This method is useful when you need to use preventDefault() on the
|
|
* $locationChangeSuccess event, perform some custom logic (route protection,
|
|
* auth, config, redirection, etc) and then finally proceed with the transition
|
|
* by calling $urlRouter.sync().
|
|
*
|
|
*/
|
|
sync(): void;
|
|
}
|
|
|
|
interface IUiViewScrollProvider {
|
|
/*
|
|
* Reverts back to using the core $anchorScroll service for scrolling
|
|
* based on the url anchor.
|
|
*/
|
|
useAnchorScroll(): void;
|
|
}
|
|
}
|