import type { IServicePluginAPI, PluginAPI } from '@umijs/core'; import { prompts } from '@umijs/utils'; export declare enum InitType { init = "init", enable = "enable" } declare type IInitOptsWithoutEnableCheck = { key: string; name: string; description: string; type: InitType.init; questions?: prompts.PromptObject[]; template: string; }; declare type IInitOptsWithEnableCheck = { key: string; name: string; description: string; type: InitType.enable; checkEnable: { (opts: { args: any; }): boolean; }; disabledDescription: string | (() => string); questions?: prompts.PromptObject[]; template: string; }; export declare type Init = IInitOptsWithEnableCheck | IInitOptsWithoutEnableCheck; export declare function makeInit(opts: T): T; export declare type IApi = PluginAPI & IServicePluginAPI & { registerInit(opts: Init): void; }; export {};