import { IDisposable } from "../../base/common/lifecycle.js"; import { ITextModel } from "./model.js"; import { LanguageSelector } from "./languageSelector.js"; import { URI } from "../../base/common/uri.js"; export interface NotebookInfo { readonly uri: URI; readonly type: string; } export interface NotebookInfoResolver { (uri: URI): NotebookInfo | undefined; } export declare class LanguageFeatureRegistry { private readonly _notebookInfoResolver?; private _clock; private readonly _entries; private readonly _onDidChange; get onDidChange(): import("../../base/common/event.js").Event; constructor(_notebookInfoResolver?: NotebookInfoResolver | undefined); register(selector: LanguageSelector, provider: T): IDisposable; has(model: ITextModel): boolean; all(model: ITextModel): T[]; allNoModel(): T[]; get registeredLanguageIds(): ReadonlySet; ordered(model: ITextModel, recursive?: boolean): T[]; orderedGroups(model: ITextModel): T[][]; private _orderedForEach; private _lastCandidate; private _updateScores; private static _compareByScoreAndTime; }