UNPKG

@stryke/types

Version:

A package containing many base TypeScript type definitions that are shared across many projects.

21 lines (20 loc) 1.25 kB
import { MessageDetails, MessageType } from "./messages.mjs"; //#region src/validations.d.ts type ValidationDetail<TMessageType extends MessageType = MessageType> = MessageDetails<TMessageType> & { /** * The field path that the message is related to. * * @remarks * If `undefined` or `null`, the message is not related to a specific field - in this case it is likely a global/form message. */ path?: string | null; }; type ErrorValidationDetail = ValidationDetail<"error">; type WarningValidationDetail = ValidationDetail<"warning">; type InfoValidationDetail = ValidationDetail<"info">; type HelpValidationDetail = ValidationDetail<"help">; type SuccessValidationDetail = ValidationDetail<"success">; type InferValidationType<TMessageType extends MessageType> = TMessageType extends "error" ? ErrorValidationDetail : TMessageType extends "warning" ? WarningValidationDetail : TMessageType extends "help" ? InfoValidationDetail : TMessageType extends "info" ? SuccessValidationDetail : ValidationDetail; //#endregion export { ErrorValidationDetail, HelpValidationDetail, InferValidationType, InfoValidationDetail, SuccessValidationDetail, ValidationDetail, WarningValidationDetail }; //# sourceMappingURL=validations.d.mts.map