import type { Node } from 'typescript';
import type { Response, Security } from './type';
import type { MetadataGenerator } from './metadata';
export declare abstract class AbstractGenerator<T extends Node> {
    protected node: T;
    protected current: MetadataGenerator;
    protected constructor(node: T, current: MetadataGenerator);
    protected buildPath(): string;
    protected getSecurity(): Security[];
    protected getExamplesValue(argument: any): unknown[];
    protected buildResponses(): Response[];
    getProduces(): string[];
    getConsumes(): string[];
    getTags(): string[];
    protected abstract getCurrentLocation(): string;
    isHidden(node: Node): boolean;
    isDeprecated(node: Node): boolean;
}
//# sourceMappingURL=abstract.d.ts.map