import { spawn } from "node:child_process"; import type { Logger } from "@akashic/akashic-cli-commons/lib/Logger.js"; import type { InitParameterObject } from "./InitParameterObject.js"; import type { NormalizedTemplateConfig } from "./TemplateConfig.js"; export declare function promiseInit(p: InitParameterObject): Promise; export declare function init(param: InitParameterObject, cb: (err?: any) => void): Promise | void; interface ExtractFromTemplateOptions { forceCopy?: boolean; logger?: Logger; } declare function _extractFromTemplate(conf: NormalizedTemplateConfig, src: string, dest: string, opts: ExtractFromTemplateOptions): Promise; declare function _setSpawnFn(mockSpawnFn: typeof spawn | undefined): void; /** * 与えられた拡張機能をパッケージとして package.json に追加する。 * インストールはしない。 */ declare function _addExtensionToPackageJSON(module: string, version: string): Promise; /** * バージョン文字列から接頭辞 (^, ~, なし) を抽出する。 * 例外として "latest" の場合は "^" を付与。 */ declare function _extractVersionPrefix(version: string): string; export declare const internals: { _extractFromTemplate: typeof _extractFromTemplate; _addExtensionToPackageJSON: typeof _addExtensionToPackageJSON; _extractVersionPrefix: typeof _extractVersionPrefix; _setSpawnFn: typeof _setSpawnFn; }; export {};