/** * Serialization/deserialization rules describe how physical buffers * are represented as JS structures at runtime. * * This is Node-only code due to use of Buffer API. */ import { type PointerInfo as LFSPointerInfo } from '@riboseinc/isogit-lfs/pointers'; import type { SerDesRule, SerDesRuleName, SerDesRuleNameExtensionMap } from '../types/object-spec'; import type { OnlyJSON } from '../util'; import type { BufferDataset } from '../types/buffers'; /** Returns serialization/deserialization rule that works for given object. */ export declare function findSerDesRuleForObject(objPath: string, obj: Record, overrides?: { extensions?: SerDesRuleNameExtensionMap; }): SerDesRule; /** Returns serialization/deserialization rule that works for given buffer dataset. */ export declare function findSerDesRuleForBuffers(objPath: string, buffers: BufferDataset, overrides?: { extensions?: SerDesRuleNameExtensionMap; }): SerDesRule; export declare function getSerDesRuleByName(ruleName: SerDesRuleName): SerDesRule; export declare const lfsPointer: SerDesRule<{ lfsPointerInfo: LFSPointerInfo; }>; export declare const textFile: SerDesRule<{ asText: string; }>; export declare const jsonFile: SerDesRule>>; export declare const yamlFile: SerDesRule>>; export declare const mmelFile: SerDesRule>>; export declare const binaryFile: SerDesRule<{ binaryData: Uint8Array; asBase64: string; }>;