import { IUI5Parser } from "../../../../parser/abstraction/IUI5Parser";
import { AbstractCustomClass, UI5Ignoreable } from "../../ui5class/AbstractCustomClass";
import { TextDocument } from "../textdocument/TextDocument";
export interface IInternalizationText extends UI5Ignoreable {
    text: string;
    description: string;
    id: string;
    positionBegin: number;
    positionEnd: number;
    hasKeyCollisions: boolean;
}
interface IResourceModel {
    [key: string]: IInternalizationText[];
}
export declare class ResourceModelData {
    protected readonly parser: IUI5Parser<AbstractCustomClass>;
    constructor(parser: IUI5Parser<AbstractCustomClass>);
    resourceModels: IResourceModel;
    readTexts(): Promise<void>;
    private _updateResourceModelData;
    static parseFile(resourceModelFile: {
        content: string;
        componentName: string;
    }): {
        text: string;
        description: string;
        id: string;
        ui5ignored: boolean;
        hasKeyCollisions: boolean;
        positionBegin: number;
        positionEnd: number;
    }[];
    updateCache(document: TextDocument): void;
}
export {};
