import { IEntityAuditColumn } from "../entity-audit-columns.interface"; import { IProjectEntity } from "../project.entity.interface"; import { IFieldMinMaxConstraint } from "./utils"; /** * excluded, and why: * - "currency", "billingType", "status", "revenueSplit", "usageNotificationSentPercentage" * enums, they carry no min/max * - "id", keyof IEntityAuditColumn generated columns */ export type IProjectFieldLengthConstraintsExclude = "id" | "currency" | "billingType" | "status" | "revenueSplit" | "usageNotificationSentPercentage" | keyof IEntityAuditColumn; /** * since some fields are optional, but we still need their * min & max length constraints, we need to make them required in this type * hence we are using -? to make all properties required in this type */ export type IProjectFieldMinMaxConstraints = { [K in keyof Omit]-?: IFieldMinMaxConstraint; }; export declare const projectFieldMinMaxConstraints: IProjectFieldMinMaxConstraints;