mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
79 lines
1.9 KiB
TypeScript
79 lines
1.9 KiB
TypeScript
// Type definitions for trouter 3.1
|
|
// Project: https://github.com/lukeed/trouter
|
|
// Definitions by: Markus Lanz <https://github.com/stahlstift>
|
|
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
// TypeScript Version: 2.3
|
|
|
|
declare namespace Trouter {
|
|
interface FindResult<T> {
|
|
params: { [k: string]: string; };
|
|
handlers: T[];
|
|
}
|
|
|
|
type HTTPMethod =
|
|
| 'ACL'
|
|
| 'BIND'
|
|
| 'CHECKOUT'
|
|
| 'CONNECT'
|
|
| 'COPY'
|
|
| 'DELETE'
|
|
| 'GET'
|
|
| 'HEAD'
|
|
| 'LINK'
|
|
| 'LOCK'
|
|
| 'M-SEARCH'
|
|
| 'MERGE'
|
|
| 'MKACTIVITY'
|
|
| 'MKCALENDAR'
|
|
| 'MKCOL'
|
|
| 'MOVE'
|
|
| 'NOTIFY'
|
|
| 'OPTIONS'
|
|
| 'PATCH'
|
|
| 'POST'
|
|
| 'PROPFIND'
|
|
| 'PROPPATCH'
|
|
| 'PURGE'
|
|
| 'PUT'
|
|
| 'REBIND'
|
|
| 'REPORT'
|
|
| 'SEARCH'
|
|
| 'SOURCE'
|
|
| 'SUBSCRIBE'
|
|
| 'TRACE'
|
|
| 'UNBIND'
|
|
| 'UNLINK'
|
|
| 'UNLOCK'
|
|
| 'UNSUBSCRIBE';
|
|
}
|
|
|
|
declare class Trouter<T = any> {
|
|
use(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
find(method: Trouter.HTTPMethod, url: string): Trouter.FindResult<T>;
|
|
|
|
add(method: Trouter.HTTPMethod, pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
all(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
get(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
head(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
patch(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
options(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
connect(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
delete(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
trace(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
post(pattern: string | RegExp, ...handlers: T[]): this;
|
|
|
|
put(pattern: string | RegExp, ...handlers: T[]): this;
|
|
}
|
|
|
|
export = Trouter;
|