/** * Handwritten extension of the generated Project class. * * Adds methods that cannot be generated by the domain-map pipeline because * they rely on private REST endpoints or complex filesystem orchestration * with no corresponding MCP tool in tools-manifest.json. * * The generated Project class is re-exported from this module, so consumers * import a single Project class that includes both generated and handwritten * methods. */ import { Project as GeneratedProject } from '../generated/src/project.js'; import { Screen } from '../generated/src/screen.js'; import type { DownloadAssetsOutput } from './spec/download.js'; import { type UploadInput } from './spec/upload.js'; export declare class Project extends GeneratedProject { /** * Upload any supported design or document file asset (PNG, JPG, WEBP, HTML) into the project. * Creates a new screen canvas entity from the file contents. * * @param filePath - Absolute or relative path to the asset file. * @param opts - Optional parameter overrides. */ upload(filePath: string, opts?: Partial>): Promise; /** * Downloads all screens and their referenced assets to a local directory. * Rewrites URLs in HTML to be self-contained. * * WHY THIS IS NOT GENERATED: * Requires complex filesystem orchestration (atomic renames, temp dirs, * hash-based filenames, URL rewriting) that the codegen pipeline cannot * express. * * @param outputDir - The directory to save assets to. * @param opts - Optional file mode, temp directory, and assets subdirectory. * @returns A trace array describing each downloaded screen and its file path. * @throws {StitchError} on project not found, network failure, or path traversal. */ downloadAssets(outputDir: string, opts?: { fileMode?: number; tempDir?: string; assetsSubdir?: string; }): Promise; } //# sourceMappingURL=project-ext.d.ts.map