/**
 * SAC multi-modal generation core logic
 */
import type { SACConfig, GlobalFlags, TaskResponse } from "./types.js";
import { getProvider, allModels, modelsByCategory, modelsByProvider } from "./providers/registry.js";
export { allModels, modelsByCategory, modelsByProvider, getProvider };
export declare const DEFAULT_IMAGE_MODEL = "volces_seedream_4_5";
export declare const DEFAULT_VIDEO_MODEL = "volces_seedance_1_5_pro";
export declare const DEFAULT_AUDIO_MODEL = "lyria_3_pro_preview";
export declare const DEFAULT_3D_TEXT_MODEL = "tripo3d_text_to_model";
export declare const DEFAULT_3D_IMAGE_MODEL = "tripo3d_image_to_model";
export declare const DEFAULT_3D_MULTIVIEW_MODEL = "tripo3d_multiview_to_model";
export interface GenerateOptions {
    config: SACConfig;
    flags: GlobalFlags;
    apiKey?: string;
}
export interface GenerateResult {
    request?: Record<string, unknown>;
    taskId?: string;
    status?: string;
    urls?: string[];
    saved?: string[];
    raw?: TaskResponse;
}
export declare function generateImage(opts: GenerateOptions): Promise<GenerateResult>;
export declare function generateVideo(opts: GenerateOptions): Promise<GenerateResult>;
export declare function generateAudio(opts: GenerateOptions): Promise<GenerateResult>;
export declare function generate3d(opts: GenerateOptions): Promise<GenerateResult>;
/**
 * Query task status
 */
export declare function queryTask(config: SACConfig, taskId: string, opts?: {
    wait?: boolean;
    intervalSec?: number;
    timeoutSec?: number;
    apiKey?: string;
}): Promise<TaskResponse>;
/**
 * Extract result URLs from task response
 */
export declare function extractUrls(data: TaskResponse): string[];
//# sourceMappingURL=generate.d.ts.map