/**
 * Copyright IBM Corp. 2024, 2025
 */
import { APICFileInfo } from '../../apic-mode/models/apic-file-info.model.js';
import { APICProject } from '../../apic-mode/models/apic-project.model.js';
import { Project } from '../../lfs/models/project.model.js';
import { VCSFileInfo } from '../../vcs/models/vcs-file-info.model.js';
import { VCSProject } from '../../vcs/models/vcs-project.model.js';
import { AssetDependencies, AssetDependencyInfo } from '../model/asset-dependency.model.js';
export interface IAssetDependencyHandler {
    getAssetDependenciesFromProject(project: Project | VCSProject | APICProject): Promise<AssetDependencyInfo[]>;
    getAssetDependencyForFile(file: FileSystemFileHandle | VCSFileInfo | APICFileInfo, project: Project | VCSProject | APICProject): Promise<AssetDependencyInfo | null>;
    handleReferenceUpdateOnDragAndDrop(fileToBeMoved: FileSystemFileHandle | VCSFileInfo | APICFileInfo, sourcePath: string, destinationPath: string, data: AssetDependencies, saveFile: (file: FileSystemFileHandle | VCSFileInfo | APICFileInfo, fileContent: string) => Promise<boolean>, newFileName?: string): Promise<void>;
}
//# sourceMappingURL=asset-dependency-handler.interface.d.ts.map