import { MetadataTransformer, WriteInfo } from '../types';
import { ConvertContext } from '../convertContext/convertContext';
import { SourceComponent } from '../../resolve';
import { RegistryAccess } from '../../registry';
export declare abstract class BaseMetadataTransformer implements MetadataTransformer {
    readonly context: ConvertContext;
    defaultDirectory?: string;
    protected registry: RegistryAccess;
    constructor(registry?: RegistryAccess, context?: ConvertContext);
    abstract toMetadataFormat(component: SourceComponent): Promise<WriteInfo[]>;
    abstract toSourceFormat(input: {
        component: SourceComponent;
        mergeWith?: SourceComponent;
    }): Promise<WriteInfo[]>;
}
