import type { RseConfig } from "@reliverse/cfg";
import type { ReliverseMemory } from "../../utils/schemaMemory.js";
/**
 * Possible template options for VS Code extensions
 */
export type VSCodeRepoOption = "microsoft/vscode-extension-samples" | "microsoft/vscode-extension-template" | "unknown";
/**
 * Possible template options for browser extensions
 */
export type BrowserRepoOption = "reliverse/template-browser-extension" | "unknown";
/**
 * Asks the user for extension config via prompts
 */
export declare function configureBrowserExtension(): Promise<{
    displayName: string;
    description: string;
    features: ("commands" | "webview" | "language" | "themes")[];
    activation: "onCommand" | "onLanguage" | "startup";
    publisher: string;
}>;
/**
 * Asks the user for extension config via prompts
 */
export declare function configureVSCodeExtension(): Promise<{
    displayName: string;
    description: string;
    features: ("commands" | "webview" | "language" | "themes")[];
    activation: "onCommand" | "onLanguage" | "startup";
    publisher: string;
}>;
export declare function optionCreateVSCodeExtension(projectName: string, cwd: string, isDev: boolean, memory: ReliverseMemory, config: RseConfig, skipPrompts: boolean): Promise<void>;
export declare function optionCreateBrowserExtension(projectName: string, cwd: string, isDev: boolean, memory: ReliverseMemory, config: RseConfig, skipPrompts: boolean): Promise<void>;
/**
 * Orchestrates the creation of a Web project.
 * If `isMultiConfig` is true, we loop through `mrse` array.
 */
export declare function optionCreateWebProject(projectName: string, cwd: string, isDev: boolean, memory: ReliverseMemory, config: RseConfig, isMultiConfig: boolean, mrse: RseConfig[], skipPrompts: boolean): Promise<void>;
