import React from "react";
import { Room } from "matrix-js-sdk/src/matrix";
import AutocompleteProvider from "./AutocompleteProvider";
import QueryMatcher from "./QueryMatcher";
import { ICompletion, ISelectionRange } from "./Autocompleter";
import { TimelineRenderingType } from "../contexts/RoomContext";
declare function matcherObject(room: Room, displayedAlias: string, matchName?: string): {
    room: Room;
    matchName: string;
    displayedAlias: string;
};
export default class RoomProvider extends AutocompleteProvider {
    private readonly room;
    protected matcher: QueryMatcher<ReturnType<typeof matcherObject>>;
    constructor(room: Room, renderingType?: TimelineRenderingType);
    protected getRooms(): Room[];
    getCompletions(query: string, selection: ISelectionRange, force?: boolean, limit?: number): Promise<ICompletion[]>;
    getName(): string;
    renderCompletions(completions: React.ReactNode[]): React.ReactNode;
}
export {};
