kura
Version:
The FileSystem API abstraction library.
38 lines (30 loc) • 1.01 kB
text/typescript
import { FileSystemObject } from "./FileSystemObject";
export interface Record {
deleted?: number;
modified?: number;
size?: number;
// [key: string]: any;
}
export interface RecordCacheEntry {
lastModified: number;
record: Record;
}
export type RecordCache = {
[name: string]: RecordCacheEntry;
};
export interface FileNameIndexEntry extends Record, FileSystemObject {}
export interface FileNameIndex {
[name: string]: FileNameIndexEntry;
}
export interface Event {
postDelete?: (obj: FileSystemObject) => void;
postGet?: (obj: FileSystemObject) => void;
postHead?: (obj: FileSystemObject) => void;
postPost?: (obj: FileSystemObject) => void;
postPut?: (obj: FileSystemObject) => void;
preDelete?: (obj: FileSystemObject) => Promise<boolean>;
preGet?: (obj: FileSystemObject) => Promise<boolean>;
preHead?: (obj: FileSystemObject) => Promise<boolean>;
prePost?: (obj: FileSystemObject) => Promise<boolean>;
prePut?: (obj: FileSystemObject) => Promise<boolean>;
}