@struktoai/mirage-core
Version:
A Unified Virtual Filesystem For AI Agents
33 lines • 1.96 kB
TypeScript
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