mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
41 lines
1.3 KiB
TypeScript
41 lines
1.3 KiB
TypeScript
// Type definitions for route-parser 0.1
|
|
// Project: http://github.com/rcs/route-parser
|
|
// Definitions by: Ian Ker-Seymer <https://github.com/ianks>, Bob Buehler <https://github.com/bobbuehler>
|
|
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
// TypeScript Version: 2.3
|
|
|
|
declare class Route<TParams extends {} = { [i: string]: any }> {
|
|
/**
|
|
* Represents a route
|
|
* @example
|
|
* var route = new Route('/:foo/:bar');
|
|
* @example
|
|
* var route = new Route('/:foo/:bar');
|
|
*/
|
|
constructor(spec: string);
|
|
|
|
/**
|
|
* Match a path against this route, returning the matched parameters if
|
|
* it matches, false if not.
|
|
* @example
|
|
* var route = new Route('/this/is/my/route')
|
|
* route.match('/this/is/my/route') // -> {}
|
|
* @example
|
|
* var route = new Route('/:one/:two')
|
|
* route.match('/foo/bar/') // -> {one: 'foo', two: 'bar'}
|
|
*/
|
|
match(pathname: string): {[k in keyof TParams]: string} | false;
|
|
|
|
/**
|
|
* Reverse a route specification to a path, returning false if it can't be
|
|
* fulfilled
|
|
* @example
|
|
* var route = new Route('/:one/:two')
|
|
* route.reverse({one: 'foo', two: 'bar'}) -> '/foo/bar'
|
|
*/
|
|
reverse(params: TParams): string | false;
|
|
}
|
|
|
|
declare namespace Route {}
|
|
export = Route;
|