@sap/generator-cap-project
Version:
Creates a new SAP Cloud Application Programming Model project.
42 lines (41 loc) • 1.62 kB
TypeScript
import { EventEmitter } from 'events';
import File from 'vinyl';
import { type PipelineTransform, Readable } from 'stream';
export type FileTransform<File> = PipelineTransform<PipelineTransform<any, File>, File>;
export type StreamOptions<StoreFile extends {
path: string;
} = File> = {
filter?: (file: StoreFile) => boolean;
};
export type PipelineOptions<StoreFile extends {
path: string;
} = File> = {
filter?: (file: StoreFile) => boolean;
resolveConflict?: (current: StoreFile, newFile: StoreFile) => StoreFile;
refresh?: boolean;
allowOverride?: boolean;
};
export declare function isFileTransform<StoreFile extends {
path: string;
} = File>(transform: PipelineOptions<StoreFile> | FileTransform<StoreFile> | undefined): transform is FileTransform<StoreFile>;
export declare function loadFile(filepath: string): File;
export declare class Store<StoreFile extends {
path: string;
} = File> extends EventEmitter {
loadFile: (filepath: string) => StoreFile;
private store;
constructor(options?: {
loadFile?: (filepath: string) => StoreFile;
});
private load;
get(filepath: string): StoreFile;
existsInMemory(filepath: string): boolean;
add(file: StoreFile): this;
each(onEach: (file: StoreFile) => void): this;
all(): StoreFile[];
stream({ filter }?: StreamOptions<StoreFile>): Readable;
pipeline(options?: PipelineOptions<StoreFile> | FileTransform<StoreFile>, ...transforms: FileTransform<StoreFile>[]): Promise<void>;
}
export declare function create<StoreFile extends {
path: string;
} = File>(): Store<StoreFile>;