import type { MulmoScript, MulmoPromptTemplateFile, MulmoStudioContext } from "../types/index.js";
import { PDFMode } from "../types/index.js";
import { z, ZodSchema } from "zod";
export declare const updateNpmRoot: (_npmRoot: string) => void;
export declare function readMulmoScriptFile<T = MulmoScript>(path: string, errorMessage: string): {
    mulmoData: T;
    mulmoDataPath: string;
    fileName: string;
};
export declare function readMulmoScriptFile<T = MulmoScript>(path: string): {
    mulmoData: T;
    mulmoDataPath: string;
    fileName: string;
} | null;
export declare const fetchMulmoScriptFile: (url: string) => Promise<{
    result: boolean;
    script?: MulmoScript;
    status: string | number;
}>;
export declare const getOutputStudioFilePath: (outDirPath: string, fileName: string) => string;
export declare const getOutputMultilingualFilePath: (outDirPath: string, fileName: string) => string;
export declare const resolveDirPath: (dirPath: string, studioFileName: string) => string;
export declare const formatAudioFileName: (name: string, lang?: string) => string;
export declare const getAudioFilePath: (audioDirPath: string, dirName: string, fileName: string, lang?: string) => string;
export declare const getGroupedAudioFilePath: (audioDirPath: string, fileName: string, lang?: string) => string;
export declare const getAudioArtifactFilePath: (context: MulmoStudioContext) => string;
export declare const getOutputVideoFilePath: (outDirPath: string, fileName: string, lang?: string, caption?: string) => string;
export declare const imageSuffix = "p";
export declare const getBeatPngImagePath: (context: MulmoStudioContext, index: number) => {
    imagePath: string;
    htmlImageFile: string;
};
export declare const getBeatAnimatedVideoPath: (context: MulmoStudioContext, index: number) => string;
export declare const getBeatMoviePaths: (context: MulmoStudioContext, index: number) => {
    movieFile: string;
    soundEffectFile: string;
    lipSyncFile: string;
};
export declare const getReferenceImagePath: (context: MulmoStudioContext, key: string, extension: string) => string;
export declare const getCaptionImagePath: (context: MulmoStudioContext, index: number, subIndex?: number) => string;
export declare const getOutputPdfFilePath: (outDirPath: string, fileName: string, pdfMode: PDFMode, lang?: string) => string;
export declare const getPromptTemplateFilePath: (promptTemplateName: string) => string;
export declare const mkdir: (dirPath: string) => void;
export declare const resolveAssetPath: (context: MulmoStudioContext, relativePath: string) => string;
export declare const silent60secPath: () => string;
export declare const defaultBGMPath: () => string;
export declare const mulmoCreditPath: () => string;
export declare const blankImagePath: () => string;
export declare const blankVerticalImagePath: () => string;
export declare const blankSquareImagePath: () => string;
export declare const getHTMLFile: (filename: string) => string;
export declare const getJSFile: (filename: string) => string;
export declare const getBaseDirPath: (basedir?: string) => string;
export declare const getFullPath: (baseDirPath: string | undefined, file: string) => string;
export declare const readScriptTemplateFile: (scriptTemplateFileName: string) => MulmoScript;
export declare const getScriptFromPromptTemplate: (promptTemplateFileName: string) => MulmoScript | undefined;
export declare const readTemplatePrompt: (promptTemplateFileName: string) => string;
export declare const getAvailablePromptTemplates: () => MulmoPromptTemplateFile[];
export declare const getAvailableScriptTemplates: () => MulmoScript[];
export declare const writingMessage: (filePath: string) => void;
export declare const readAndParseJson: <S extends ZodSchema<any>>(filePath: string, schema: S) => z.output<S>;
export declare const generateTimestampedFileName: (prefix: string) => string;
export declare const hashSHA256: (text: string) => string;
export declare const isFile: (filePath: string) => boolean;
