export function isObject(value: unknown): value is Record { return Boolean(value) && typeof value === 'object' } export function asString(value: unknown): string | null { return typeof value === 'string' ? value : null } export function asNumber(value: unknown): number | null { return typeof value === 'number' && Number.isFinite(value) ? value : null } export function safeStringify(value: unknown): string { if (typeof value === 'string') return value try { const stringified = JSON.stringify(value, null, 2) return typeof stringified === 'string' ? stringified : String(value) } catch { return String(value) } }