46 lines
1.0 KiB
TypeScript
46 lines
1.0 KiB
TypeScript
export type VideoToolMode =
|
|
| "text-to-video"
|
|
| "first-frame"
|
|
| "first-last-frame"
|
|
| "reference-images";
|
|
|
|
export type VideoToolResolution = "480p" | "720p" | "1080p";
|
|
|
|
export interface VideoToolModeOption {
|
|
mode: VideoToolMode;
|
|
label: string;
|
|
imageMin: number;
|
|
imageMax: number;
|
|
}
|
|
|
|
export interface VideoToolUiToggles {
|
|
showResolution: boolean;
|
|
showFps: boolean;
|
|
showCameraMove: boolean;
|
|
showGenerateAudio: boolean;
|
|
showReturnLastFrame: boolean;
|
|
showSeed: boolean;
|
|
}
|
|
|
|
export interface VideoToolDefaults {
|
|
mode: VideoToolMode;
|
|
ratio: string;
|
|
duration: number;
|
|
resolution?: VideoToolResolution;
|
|
generateAudio?: boolean;
|
|
fps?: number;
|
|
}
|
|
|
|
export interface VideoToolCapabilityContract {
|
|
schemaVersion: "v1";
|
|
source: "provider-default" | "model-capabilities";
|
|
providerType: string;
|
|
modelId?: string;
|
|
modeOptions: VideoToolModeOption[];
|
|
ratioOptions: string[];
|
|
durationOptions: number[];
|
|
resolutionOptions: VideoToolResolution[];
|
|
ui: VideoToolUiToggles;
|
|
defaults: VideoToolDefaults;
|
|
}
|