UNPKG

@yihuangdb/storage-object

Version:

A Node.js storage object layer library using Redis OM

37 lines 1.15 kB
"use strict"; /** * @module types/storage-schema * @description TypeScript type definitions for the StorageSchema API */ Object.defineProperty(exports, "__esModule", { value: true }); exports.isValidFieldType = isValidFieldType; exports.isFieldDefinition = isFieldDefinition; exports.isSchemaConfiguration = isSchemaConfiguration; /** * Type guard to check if a value is a valid field type */ function isValidFieldType(value) { const validTypes = [ 'string', 'number', 'boolean', 'date', 'point', 'string[]', 'number[]', 'text', 'json', 'binary' ]; return validTypes.includes(value); } /** * Type guard to check if a value is a field definition */ function isFieldDefinition(value) { return value && typeof value === 'object' && 'type' in value && isValidFieldType(value.type); } /** * Type guard to check if a value is a schema configuration */ function isSchemaConfiguration(value) { return value && typeof value === 'object' && Object.values(value).every(field => isValidFieldType(field) || isFieldDefinition(field)); } //# sourceMappingURL=storage-schema.js.map