import type { TiDBFilesystemAccessor } from '../../accessor/tidb_filesystem.ts';
import type { ByteSource } from '../../io/types.ts';
import type { FileStat, PathSpec } from '../../types.ts';
import { BaseVFS } from '../base.ts';
import type { Handed } from '../types.ts';
/**
 * TiDBFilesystem's functions over its accessor, which a host package builds
 * over its own transport.
 */
export declare class TiDBFilesystemVFS extends BaseVFS<TiDBFilesystemAccessor> {
    readonly readsRanges: boolean;
    readdir(path: PathSpec): Promise<FileStat[]>;
    read(path: PathSpec, _handed?: Handed, offset?: number, size?: number | null): Promise<ByteSource> | AsyncIterable<Uint8Array>;
    stat(path: PathSpec): Promise<FileStat>;
    exists(path: PathSpec): Promise<boolean>;
    write(path: PathSpec, data: ByteSource): Promise<void>;
    append(path: PathSpec, data: ByteSource): Promise<void>;
    create(path: PathSpec): Promise<void>;
    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>;
}
//# sourceMappingURL=tidb_filesystem.d.ts.map