UNPKG

1.35 kBTypeScriptView Raw
1import { Disposable, Emitter, Event } from '../common';
2export interface Language {
3 readonly id: string;
4 readonly name: string;
5 readonly extensions: Set<string>;
6 readonly filenames: Set<string>;
7 readonly iconClass?: string;
8}
9export declare class LanguageService {
10 protected readonly onDidChangeIconEmitter: Emitter<DidChangeIconEvent>;
11 /**
12 * It should be implemented by an extension, e.g. by the monaco extension.
13 */
14 get languages(): Language[];
15 /**
16 * It should be implemented by an extension, e.g. by the monaco extension.
17 */
18 getLanguage(languageId: string): Language | undefined;
19 /**
20 * It should be implemented by an extension, e.g. by the monaco extension.
21 */
22 detectLanguage(obj: unknown): Language | undefined;
23 /**
24 * It should be implemented by an extension, e.g. by the monaco extension.
25 */
26 registerIcon(languageId: string, iconClass: string): Disposable;
27 /**
28 * It should be implemented by an extension, e.g. by the monaco extension.
29 */
30 getIcon(obj: unknown): string | undefined;
31 /**
32 * Emit when the icon of a particular language was changed.
33 */
34 get onDidChangeIcon(): Event<DidChangeIconEvent>;
35}
36export interface DidChangeIconEvent {
37 languageId: string;
38}
39//# sourceMappingURL=language-service.d.ts.map
\No newline at end of file