import { parse as uuidParse, stringify as uuidStringify, v4 as uuidv4, v7 as uuidv7, validate, version, } from "uuid"; export const generateUUIDv4 = (): string => uuidv4(); export const generateUUIDv7 = (): string => uuidv7(); export function uuidStringToBinary(uuid: string): Buffer { return Buffer.from(uuidParse(uuid)); } export function uuidBinaryToString(buffer: Buffer): string { return uuidStringify(buffer); } export function isUuidValid(value: string): boolean { return validate(value) && version(value) === 7; } export function isUuidBinary(value: unknown): value is Buffer { return Buffer.isBuffer(value) && value.length === 16; } export function isUuidString(value: unknown): value is string { return typeof value === "string" && isUuidValid(value); }