import type { ObjectLiteralExpression, SourceFile } from 'ts-morph';
export declare const DecoratorDriver: {
    /** Add a provider { provide, useClass } to a decorator array. */
    addDecoratorAdapter(sourceFile: SourceFile, moduleName: string, decoratorName: string, propertyName: string, provide: string, adapter: string): void;
    /** Add an element to a decorator array property (e.g., providers, imports). */
    addModuleDecoratorProperty(sourceFile: SourceFile, moduleName: string, decoratorName: string, propertyName: string, module: string): void;
    /** Change the useClass of a provider in a decorator array property. */
    changeModuleDecoratorPropertyAdapter(sourceFile: SourceFile, moduleName: string, decoratorName: string, propertyName: string, provide: string, adapter: string): void;
    getClassDecoratorArguments(sourceFile: SourceFile, className: string, decoratorName: string): ObjectLiteralExpression;
    /** Check if a decorator array property already contains a value. */
    hasModuleDecoratorProperty(sourceFile: SourceFile, moduleName: string, decoratorName: string, propertyName: string, module: string): boolean;
    /** Remove a provider from a decorator array by its provide value. */
    removeDecoratorAdapter(sourceFile: SourceFile, moduleName: string, decoratorName: string, propertyName: string, provide: string): void;
};
