import { AbstractType } from "./AbstractType"; import { Req, scalar } from "@huz-com/types"; import { UuidTypeOption } from "./index.interfaces"; declare type T = scalar.Uuid; declare type O = UuidTypeOption; export declare class UuidType extends AbstractType { protected static readonly _PATTERN: RegExp; protected static readonly _DEF_GENERATOR = "v4"; protected static _ins: UuidType; /** * Returns skeleton instance * */ static ins(): UuidType; constructor(); /** * Checks is uuid? */ is(value: scalar.Unknown, opt?: O, req?: Req): boolean; /** * Converts a value to uuid */ cast(value: scalar.Unknown, opt?: O, req?: Req): T | null; /** * Generated uuid by version * */ generateAsync(version?: scalar.Alpha | scalar.Integer, req?: Req): Promise; /** * Generated uuid by version * */ generate(version?: scalar.Alpha | scalar.Integer, req?: Req): T; /** * Generated empty uuid * */ zeroId(): T; } export {};