@struktoai/mirage-core
Version:
A Unified Virtual Filesystem For AI Agents
41 lines • 2.23 kB
TypeScript
import type { S3Accessor } from '../../accessor/s3.ts';
import type { ConditionSupport, ReplaceRequest } from '../../cache/types.ts';
import type { ByteSource } from '../../io/types.ts';
import type { DirListing, FileStat, PathSpec } from '../../types.ts';
import { BaseVFS } from '../base.ts';
import type { Handed } from '../types.ts';
/**
* S3's functions over its accessor, which the node and browser
* packages build over their own transport.
*/
export declare class S3VFS extends BaseVFS<S3Accessor> {
get conditionSupport(): ConditionSupport;
readonly readsRanges: boolean;
/**
* The endpoint this mount's writes go to, for its write-condition row: the
* config's. The node mount also reads the environment. Mirrors Python's
* `resolved_endpoint`.
*/
get resolvedEndpoint(): string | undefined;
/** Whether requests go through presigned URLs, which carry no condition. */
get presigned(): boolean;
readTree(path: PathSpec, handed?: Handed): Promise<Map<string, FileStat> | null>;
readdir(path: PathSpec, handed?: Handed): Promise<FileStat[] | DirListing>;
read(path: PathSpec, _handed?: Handed, offset?: number, size?: number | null): Promise<ByteSource> | AsyncIterable<Uint8Array>;
stat(path: PathSpec): Promise<FileStat>;
copyFrom(source: BaseVFS, src: PathSpec, dst: PathSpec): Promise<void>;
checksum(path: PathSpec, algorithm: string): Promise<string | null>;
exists(path: PathSpec): Promise<boolean>;
write(path: PathSpec, data: ByteSource, signal?: AbortSignal): Promise<FileStat | null>;
append(path: PathSpec, data: ByteSource): Promise<FileStat | null | undefined>;
_replace(request: ReplaceRequest, signal?: AbortSignal): Promise<FileStat | null>;
create(path: PathSpec): Promise<FileStat | null>;
mkdir(path: PathSpec, parents?: boolean): Promise<void>;
unlink(path: PathSpec): Promise<void>;
rmdir(path: PathSpec): Promise<void>;
rmR(path: PathSpec): Promise<void>;
rename(src: PathSpec, dst: PathSpec): Promise<void>;
copy(src: PathSpec, dst: PathSpec): Promise<void>;
truncate(path: PathSpec, length: number, noCreate?: boolean): Promise<FileStat | null>;
}
//# sourceMappingURL=s3.d.ts.map