import { OpenAPIV2 } from 'openapi-types';
import { MethodGenerator } from './MethodGenerator';
import { GeneratorContext, TemplateGenerator } from './TemplateGenerator';
interface Context extends GeneratorContext {
    imports: {
        path: string;
        list: string[];
    };
    methods: MethodGenerator[];
    name: string;
}
export declare class ResourceGenerator extends TemplateGenerator {
    private readonly directory;
    private readonly methods;
    protected readonly name: string;
    protected readonly templateFile: string;
    readonly fullyQualifiedName: string;
    readonly imports: {
        path: string;
        list: string[];
    };
    constructor(fullyQualifiedName: string, resources: Record<string, OpenAPIV2.PathsObject>, spec: OpenAPIV2.Document);
    protected getContext(): Promise<Context>;
    get filePath(): string;
}
export {};
