import { FileData, ModuleFile, ResourceFile, Writer } from './types';
export declare class FileManager {
    readonly params: {
        cwd: string;
        schemasDir: string;
        outputDir: string;
        write: Writer;
        onResourceWrite: (resourceFile: ResourceFile) => void;
    };
    constructor(params: {
        cwd: string;
        schemasDir: string;
        outputDir: string;
        write: Writer;
        onResourceWrite: (resourceFile: ResourceFile) => void;
    });
    writeResource({ source, ...resourceFile }: ResourceFile & FileData): void;
    writeModule({ source, module, fileName }: ModuleFile & FileData): Promise<void>;
    writeIndex({ fileName, source }: {
        fileName: string;
        source: string;
    }): Promise<void>;
    listSchemaFiles(): Promise<any>;
}
