import { ComponentID } from '@teambit/component-id';
import { SourceFile } from '@teambit/component.sources';
import { SourceFileModel } from '@teambit/legacy/dist/scope/models/version';
import { Repository } from '@teambit/legacy/dist/scope/objects';
type FILE_STATUS = 'new' | 'modified' | 'deleted' | 'unchanged';
type PathLinux = string;
export type FilesStatus = {
    [pathRelativeToCompDir: PathLinux]: FILE_STATUS;
};
export declare class CompFiles {
    readonly id: ComponentID;
    private repository;
    private currentFiles;
    readonly compDir: PathLinux;
    private modelFiles;
    constructor(id: ComponentID, repository: Repository, currentFiles: SourceFile[], compDir: PathLinux, modelFiles?: SourceFileModel[]);
    isModified(): boolean;
    getCurrentFiles(): SourceFile[];
    getHeadFiles(): Promise<SourceFile[]>;
    getFilesStatus(): FilesStatus;
}
export {};
