@struktoai/mirage-core
Version:
A Unified Virtual Filesystem For AI Agents
29 lines • 1.11 kB
TypeScript
import { Accessor } from './base.ts';
import type { AirtableConfig } from '../core/airtable/config.ts';
import { RateLimiter } from '../core/api/rate_limit.ts';
import type { Clock } from '../utils/clock.ts';
/**
* The account, its bounds with defaults applied, and the per-base pacing
* every call rides. `fetchFn` keeps the transport's injection seam.
*/
export declare class AirtableAccessor extends Accessor {
readonly config: AirtableConfig;
readonly baseUrl: string;
readonly baseIds: readonly string[] | null;
readonly maxReadRecords: number;
readonly limiter: RateLimiter;
readonly fetchFn: typeof fetch | undefined;
constructor(config: AirtableConfig, options?: {
fetchFn?: typeof fetch;
});
/**
* Pace each base's calls on the workspace's clock.
*
* @param owner who holds it, released by the same key.
* @throws Error when a workspace on another clock mounts it.
*/
bindClock(clock: Clock, owner: unknown): void;
/** Let `owner` go. */
releaseClock(owner: unknown): void;
}
//# sourceMappingURL=airtable.d.ts.map