import { Construct } from "constructs";
import { Component, Project } from "projen";
export type VsCodeWorkspacesJson = {
    extensions?: {
        recommendations?: string[];
    };
    folders: {
        name: string;
        path: string;
    }[];
    settings?: {
        [key: string]: unknown;
    };
};
export interface VsCodeWorkspacesOptions {
    /**
     * @default none
     */
    additionalWorkspacesJsonSettings?: Omit<VsCodeWorkspacesJson, "folders">;
    /**
     * @default false
     */
    disableMonoRepoExtensionRecommendations?: boolean;
    /**
     * Should end with ".code-workspace"
     */
    filename: string;
    /**
     * @default (project) => project.name
     *
     * @param rootProject The root project definition to use for naming
     * @param project The project definition to use for naming
     * @returns The name of the project in the context of VSCode Workspaces
     */
    projectNamer?: (project: Project, rootProject: Project) => string;
    /**
     * @default ".vscode"
     */
    path?: string;
}
export declare class VsCodeWorkspaces extends Component {
    constructor(rootProject: Construct, options: VsCodeWorkspacesOptions);
}
