import type { Tagged } from 'type-fest'; /** RID 字段要求(至少 1 字符) */ export declare const RESOURCE_ID_PART_MIN_LENGTH: number; /** RID 字段要求(至多 240 字符) */ export declare const RESOURCE_ID_PART_MAX_LENGTH: number; /** RID 字段要求(不包含特殊符号和空格) */ export declare const RESOURCE_ID_PART_REGEX: RegExp; /** RID 字段要求 */ export declare const RESOURCE_ID_MAX_LENGTH: number; /** RID 正则 */ export declare const RESOURCE_ID_REGEX: RegExp; /** 资源类型 ID */ export type ResourceTypeId = Tagged; /** RID 信息 */ export interface ResourceIdInfo { /** 类型 */ type: ResourceTypeId; /** 所有者 */ owner: string; /** 资源 key */ key: string; } /** 生成 ResourceTypeId */ export declare function ResourceTypeId(type: T): ResourceTypeId; /** 资源 ID */ export type ResourceId = Tagged<`${ResourceTypeId}/${string}/${string}`, 'ResourceId'>; /** 生成 ResourceId */ export declare function ResourceId(type: ResourceTypeId, owner: string, key: string): ResourceId; /** 生成 ResourceId */ export declare function ResourceId(val: ResourceIdInfo): ResourceId; /** 校验 ResourceId */ export declare function ResourceId(rid: string | null | undefined): ResourceId; /** 生成给定类型 ResourceId */ export declare function ResourceIdOf(type: ResourceTypeId, ...args: [val: ResourceIdInfo] | [rid: string | null | undefined] | [owner: string, key: string]): ResourceId; /** 解析 ResourceId */ export declare function parseResourceId(val: string | null | undefined): ResourceIdInfo | undefined; /** 解析 ResourceId 为给定类型 */ export declare function parseResourceIdOf(type: ResourceTypeId, val: string | null | undefined): ResourceIdInfo | undefined; /** * 校验 ResourceId */ export declare function isResourceId(val: unknown): val is ResourceId; /** * 校验 ResourceId 为给定类型 */ export declare function isResourceIdOf(type: ResourceTypeId, val: unknown): val is ResourceId; //# sourceMappingURL=resource-id.d.ts.map