import { SourceComponent } from '../../resolve';
import type { ToSourceFormatInput, WriteInfo } from '../types';
import { BaseMetadataTransformer } from './baseMetadataTransformer';
export declare class DecomposedPermissionSetTransformer extends BaseMetadataTransformer {
    /**
     * Combines a decomposed Permission Set into a singular .permissonset metadata-formatted file
     *
     * @param {SourceComponent} component - either the parent or child of a decomposed permission set to be combined with
     * @returns {Promise<WriteInfo[]>} will be an array with one WriteInfo in it, because they're ending in one file
     */
    toMetadataFormat(component: SourceComponent): Promise<WriteInfo[]>;
    /**
     * will decompose a .permissionset into a directory containing files, and an 'objectSettings' folder for object-specific settings
     *
     * @param {SourceComponent} component A SourceComponent representing a metadata-formatted permission set
     * @param {SourceComponent | undefined} mergeWith any existing source-formatted permission sets to be merged with, think existing source merging with new information from a retrieve
     * @returns {Promise<WriteInfo[]>} Will contain file content information, and file paths
     */
    toSourceFormat({ component, mergeWith }: ToSourceFormatInput): Promise<WriteInfo[]>;
}
