UNPKG

@struktoai/mirage-core

Version:

A Unified Virtual Filesystem For AI Agents

33 lines • 1.96 kB
export type Row = Record<string, unknown>; /** Whether a decoded JSON value is an object. */ export declare function isRow(value: unknown): value is Row; /** A decoded JSON object, or an empty one for anything else. */ export declare function asRow(value: unknown): Row; /** The objects of a decoded JSON array; anything else holds none. */ export declare function asRows(value: unknown): Row[]; /** One base as the listing names it: id, name and permission level. */ export declare function normalizeBaseSummary(base: Row): Row; /** base.json: the base and the tables it holds. */ export declare function normalizeBase(base: Row, tables: readonly Row[]): Row; /** One column: its id, name, type and the type's options. */ export declare function normalizeField(column: Row): Row; /** One saved view: its id, name and kind (grid, kanban, ...). */ export declare function normalizeView(view: Row): Row; /** table.json: the column schema and the saved views. */ export declare function normalizeTable(table: Row, baseId: string): Row; /** * One records.jsonl row. `fields` is Airtable's cell map, keyed by field * name and passed through untouched: an empty cell is absent (Airtable never * sends one), a link is a list of record ids, and an attachment's url is the * API's own, which expires two hours after it was fetched. */ export declare function normalizeRecord(record: Row): Row; /** One comment on a record, with its author flattened. */ export declare function normalizeComment(comment: Row): Row; /** One deleted record, as the delete answer names it. */ export declare function normalizeDeletion(row: Row): Row; /** Render records one per line, in the order they were listed. */ export declare function recordsJsonl(listed: readonly Row[]): Uint8Array; /** Render deleted records one per line, in the order they were deleted. */ export declare function deletionsJsonl(rows: readonly Row[]): Uint8Array; //# sourceMappingURL=normalize.d.ts.map