import type { OkResponse } from '../common.js';
import type { ArtifactKind, ArtifactManifest } from './artifacts.js';
export type ProjectFileKind = 'html' | 'image' | 'video' | 'audio' | 'sketch' | 'text' | 'code' | 'pdf' | 'document' | 'presentation' | 'spreadsheet' | 'binary';
export interface ProjectFileStubGuardWarning {
    code: 'ARTIFACT_REGRESSION';
    message: string;
    identifier: string;
    newSize: number;
    priorSize: number;
    priorName: string;
}
export interface ProjectFile {
    name: string;
    path?: string;
    type?: 'file' | 'dir';
    size: number;
    mtime: number;
    kind: ProjectFileKind;
    mime: string;
    artifactKind?: ArtifactKind;
    artifactManifest?: ArtifactManifest;
    stubGuardWarning?: ProjectFileStubGuardWarning;
}
export interface ProjectFilesResponse {
    files: ProjectFile[];
}
export interface ProjectFileResponse {
    file: ProjectFile;
}
export interface UploadProjectFilesResponse extends ProjectFilesResponse {
}
export interface DeleteProjectFileResponse extends OkResponse {
}
export interface RenameProjectFileRequest {
    from: string;
    to: string;
}
export interface RenameProjectFileResponse {
    file: ProjectFile;
    oldName: string;
    newName: string;
}
//# sourceMappingURL=files.d.ts.map