import { LegacyOperation } from './interfaces'; import { ProcessorModule, APIModule, ReaderModule } from './operations'; export interface LoaderOptions { /** Path to teraslice lib directory */ terasliceOpPath?: string; /** Path to where the assets are stored */ assetPath?: string; } export declare class OperationLoader { private readonly options; private readonly availableExtensions; constructor(options?: LoaderOptions); find(name: string, assetIds?: string[]): string | null; /** * Load any LegacyOperation * DEPRECATED to accommadate for new Job APIs, * use loadReader, or loadProcessor */ load(name: string, assetIds?: string[]): LegacyOperation; loadProcessor(name: string, assetIds?: string[]): ProcessorModule; loadReader(name: string, assetIds?: string[]): ReaderModule; loadAPI(name: string, assetIds?: string[]): APIModule; private findOrThrow; private isLegacyReader; private shimLegacyReader; private isLegacyProcessor; private shimLegacyProcessor; private fileExists; private require; private resolvePath; private verifyOpName; private findCode; private isDir; private getBuiltinDir; } //# sourceMappingURL=operation-loader.d.ts.map