hasura-node-types
Version:
Add Hasura types, event trigger and action wrapper for common web frameworks
50 lines (49 loc) • 2.16 kB
TypeScript
import { HasuraActionPayload, HasuraEventPayload, HasuraScheduledTriggerPayload } from "./types";
declare const LEVEL_INFO = "info";
declare const LEVEL_DEBUG = "debug";
declare const LEVEL_WARN = "warn";
declare const LEVEL_ERROR = "error";
declare type LogLevel = typeof LEVEL_INFO | typeof LEVEL_DEBUG | typeof LEVEL_WARN | typeof LEVEL_ERROR;
export declare type Logger = {
readonly log?: (...args: any[]) => void;
readonly [LEVEL_DEBUG]: (...args: any[]) => void;
readonly [LEVEL_INFO]: (...args: any[]) => void;
readonly [LEVEL_WARN]: (...args: any[]) => void;
readonly [LEVEL_ERROR]: (...args: any[]) => void;
};
export declare const defaultLogger: {
log: {
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
};
debug: {
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
};
info: {
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
};
warn: {
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
};
error: {
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
};
};
declare type PrintLogPayload = {
readonly message: string;
readonly level: LogLevel;
[key: string]: any;
};
export declare function getActionUserID(payload: HasuraActionPayload): string | null;
export declare function getActionUserRole(payload: HasuraActionPayload): string | null;
export declare function getEventUserID(payload: HasuraEventPayload): string | null;
export declare function getEventUserRole(payload: HasuraEventPayload): string | null;
export declare function printLog(logger: Logger, payload: PrintLogPayload): void;
export declare function validateActionPayload<P extends HasuraActionPayload = HasuraActionPayload>(input: unknown): P;
export declare function validateEventPayload<P extends HasuraEventPayload = HasuraEventPayload>(input: unknown): P;
export declare function validateScheduledTriggerPayload<P extends HasuraScheduledTriggerPayload = HasuraScheduledTriggerPayload>(input: unknown): P;
export {};