@stryke/types
Version:
A package containing many base TypeScript type definitions that are shared across many projects.
18 lines (17 loc) • 660 B
TypeScript
export type MessageType = "help" | "error" | "warning" | "info" | "success";
export type MessageDetails<TMessageType extends MessageType = MessageType> = {
code: string;
message?: string;
type: TMessageType;
params?: Record<string, any>;
} | {
code?: string;
message: string;
type: TMessageType;
params?: Record<string, any>;
};
export type HelpMessageDetails = MessageDetails<"help">;
export type ErrorMessageDetails = MessageDetails<"error">;
export type WarningMessageDetails = MessageDetails<"warning">;
export type InfoMessageDetails = MessageDetails<"info">;
export type SuccessMessageDetails = MessageDetails<"success">;