import type * as vscode from 'vscode'; import { ConfigSelectors } from './selectors'; import type { PartialDeep, JsonObject } from 'type-fest'; import type { LanguageDefinition } from '../util/contributes'; export type SelectorSource = string[] | string; type PartialJsonObject = PartialDeep; export interface ConfigJson extends PartialJsonObject { assignment?: { multiple?: SelectorSource; separator?: SelectorSource; single?: SelectorSource; }; declarations?: SelectorSource; dedentation?: SelectorSource; exclude?: string; indentation?: { [selector: string]: 1 | -1 | undefined; }; punctuation?: { continuation?: SelectorSource; }; markers?: { end?: string; start?: string; }; symbols?: { [selector: string]: vscode.SymbolKind | undefined; }; } export declare class ConfigData { readonly language: LanguageDefinition; readonly extensions?: string; readonly exclude?: string; readonly selectors: ConfigSelectors; readonly include: string; constructor(json: ConfigJson, language: LanguageDefinition); } export {};