import { IEntityAuditColumn } from "../entity-audit-columns.interface"; import { IRolePermissionMappingEntity } from "../role_permission_mapping.entity.interface"; import { IFieldMinMaxConstraint } from "./utils"; /** * excluded, and why: * - "id", keyof IEntityAuditColumn generated columns * * a join table of two int foreign keys and nothing else. There is no RolePermissionMappingCreateDto * or UpdateDto — RolePermissionsMappingCreateDto takes a { permissionName: roleName[] } map rather * than entity fields — so both bounds come from the column definitions */ export type IRolePermissionMappingFieldLengthConstraintsExclude = "id" | 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 IRolePermissionMappingFieldMinMaxConstraints = { [K in keyof Omit]-?: IFieldMinMaxConstraint; }; export declare const rolePermissionMappingFieldMinMaxConstraints: IRolePermissionMappingFieldMinMaxConstraints;