export type LocalTemplateMetadata = { sourceType: "local"; name: string; path: string; }; export type RemoteTemplateMetadata = { sourceType: "remote"; name: string; url: string; }; export type TemplateMetadata = LocalTemplateMetadata | RemoteTemplateMetadata; export declare function digestOfTemplateMetadata(metadata: TemplateMetadata): string; export declare function collectLocalTemplatesMetadata(templateDirectory: string): Promise; export declare function fetchRemoteTemplatesMetadata(templateListJsonUri: string): Promise; /** * テンプレートを取得する。 * * remote ならテンポラリディレクトリにダウンロードし、local ならテンポラリディレクトリにコピーする。 * * @param metadata 取得するテンプレート * @returns 取得したテンプレート(template.jsonがあるディレクトリ)のパス。テンポラリディレクトリでありうる。 */ export declare function fetchTemplate(metadata: TemplateMetadata): Promise;