Files
NapCatQQ/.pnpm-store/v3/files/83/c0166371223644bed9fae08d09729aa12cb7ee6c2d10f161a825262b06b0bd96e52d7616e687d071bbfb7c63eed209a862ede471be18da7e3ebbe00e97d84c
TanTan e311ca3275
Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

23 lines
875 B
Plaintext

import { CreateType } from '../create/type.mjs';
import { Kind } from '../symbols/index.mjs';
// ------------------------------------------------------------------
// TypeGuard
// ------------------------------------------------------------------
import { IsOptional } from '../guard/kind.mjs';
function RequiredKeys(properties) {
const keys = [];
for (let key in properties) {
if (!IsOptional(properties[key]))
keys.push(key);
}
return keys;
}
/** `[Json]` Creates an Object type */
function _Object(properties, options) {
const required = RequiredKeys(properties);
const schematic = required.length > 0 ? { [Kind]: 'Object', type: 'object', properties, required } : { [Kind]: 'Object', type: 'object', properties };
return CreateType(schematic, options);
}
/** `[Json]` Creates an Object type */
export var Object = _Object;