@struktoai/mirage-core
Version:
A Unified Virtual Filesystem For AI Agents
27 lines • 1.41 kB
TypeScript
import type { WriteKind } from '../../cache/types.ts';
import { MountMode, WritePolicy } from '../../types.ts';
import type { BaseVFS } from '../../vfs/base.ts';
/**
* Coerce a declared write-policy name to its `WritePolicy`, or refuse it.
* Absent (`undefined`, `null`, `''`) means unconditional. Idempotent on a
* member. Mirrors Python's `coerce_write_policy`.
*
* @throws if the value is not a known policy name.
*/
export declare function coerceWritePolicy(value: unknown): WritePolicy;
export declare function writeConditions(vfs: BaseVFS): readonly WriteKind[];
/** The operations this mount's backend can condition on absence. Mirrors Python's `create_conditions`. */
export declare function createConditions(vfs: BaseVFS): readonly WriteKind[];
/**
* Refuse a write policy this mount cannot honour.
*
* A policy that cannot act must say so: a conditional mount whose writes would
* go out unconditioned is the silent downgrade the policy exists to remove, so
* it is refused at mount time. Mirrors Python's `check_write_capability`.
*
* @param caches whether the mount keeps a cached copy (the version a write
* sends is the one that copy holds)
* @throws if the mount cannot honour the declared policy.
*/
export declare function checkWriteCapability(prefix: string, vfs: BaseVFS, policy: WritePolicy, mode: MountMode, caches: boolean): void;
//# sourceMappingURL=write_policy.d.ts.map