import { Media } from "./Media.js"; import type { ImageInput, MediaReference, PromptConfig } from "./Types.js"; import { Account } from "./Whisk.js"; export declare class Project { readonly account: Account; readonly projectId: string; readonly subjects: MediaReference[]; readonly scenes: MediaReference[]; readonly styles: MediaReference[]; constructor(projectId: string, account: Account); /** * Uploads a custom image and adds it as a subject reference * * @param input Image as { file: string }, { url: string }, or { base64: string } */ addSubject(input: ImageInput): Promise; /** * Uploads a custom image and adds it as a scene reference * * @param input Image as { file: string }, { url: string }, or { base64: string } */ addScene(input: ImageInput): Promise; /** * Uploads a custom image and adds it as a style reference * * @param input Image as { file: string }, { url: string }, or { base64: string } */ addStyle(input: ImageInput): Promise; addSubjectById(mediaGenerationId: string, prompt: string): void; addSceneById(mediaGenerationId: string, prompt: string): void; addStyleById(mediaGenerationId: string, prompt: string): void; removeSubject(mediaGenerationId: string): MediaReference; removeScene(mediaGenerationId: string): MediaReference; removeStyle(mediaGenerationId: string): MediaReference; private addById; private removeById; private addReference; generateImage(input: string | PromptConfig): Promise; /** * Generate image but with subject, scene, style attached */ generateImageWithReferences(input: string | PromptConfig): Promise; /** * Deletes the project, clearance of your slop from the existance */ delete(): Promise; }