UNPKG

signalk-server

Version:

An implementation of a [Signal K](http://signalk.org) server for boats.

59 lines 1.99 kB
export type RequestState = 'PENDING' | 'COMPLETED'; export type RequestType = 'put' | 'delete' | 'accessRequest'; export interface ClientRequest { requestId?: string; [key: string]: unknown; } export interface Request { requestId: string; type: RequestType; clientRequest: ClientRequest; ip?: string; date: Date; state: RequestState; statusCode: number; updateCb?: (reply: Reply) => void; user?: string; message?: string; data?: unknown; percentComplete?: number; accessIdentifier?: string; accessDescription?: string; accessPassword?: string; requestedPermissions?: boolean; permissions?: string; token?: string; } export interface AccessRequestData { permission?: string; token?: string; } export interface Reply { state: RequestState; requestId: string; statusCode: number; message?: string; href: string; ip?: string; user?: string; put?: unknown; delete?: unknown; accessRequest?: AccessRequestData; } export interface UpdateOptions { statusCode?: number | null; data?: unknown | null; message?: string | null; percentComplete?: number | null; } interface AppWithIntervals { intervals: NodeJS.Timeout[]; } export declare function resetRequests(): void; export declare function createRequest(app: AppWithIntervals, type: RequestType, clientRequest: ClientRequest, user?: string, clientIp?: string, updateCb?: (reply: Reply) => void): Promise<Request>; export declare function updateRequest(requestId: string, state: RequestState | null, { statusCode, data, message, percentComplete }: UpdateOptions): Promise<Reply>; export declare function queryRequest(requestId: string): Promise<Reply>; export declare function findRequest(matcher: (request: Request) => boolean): Request | undefined; export declare function filterRequests(type: RequestType, state: RequestState | null): Request[]; export {}; //# sourceMappingURL=requestResponse.d.ts.map