/** * The basic response schema */ export interface IResponse { result?: T, status : string } /** * Supported status codes */ export enum Status { Ok = 200, BadRequest = 400, Unauthorized = 401, Forbidden = 403, NotFound = 404, Conflict = 409, Gone = 410, PayloadTooLarge = 413, UnprocessableEntity = 422, InternalServerError = 500 } /** * Create a response */ export function statusMessage(status: Status): string { switch(status) { case Status.Ok: return "OK" case Status.BadRequest: return "Bad Request"; case Status.Unauthorized: return "Unauthorized"; case Status.Forbidden: return "Forbidden"; case Status.NotFound: return "Not Found"; case Status.Conflict: return "Conflict"; case Status.Gone: return "Gone"; case Status.PayloadTooLarge: return "Payload Too Large"; case Status.UnprocessableEntity: return "Unprocessable Entity"; case Status.InternalServerError: return "Internal Server Error"; } }