/**
 * Copyright (c) 2020-present, Goldman Sachs
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import { type PlainObject } from '@finos/legend-shared';
export declare abstract class SearchEntry {
    uuid: string;
}
export declare class SearchResultPreview {
    before: string;
    found: string;
    after: string;
}
export declare class SearchResultCoordinate {
    uuid: string;
    sourceId: string;
    startLine: number;
    startColumn: number;
    endLine: number;
    endColumn: number;
    preview?: SearchResultPreview | undefined;
    constructor(sourceId: string, startLine: number, startColumn: number, endLine: number, endColumn: number);
}
export declare class SearchResultEntry extends SearchEntry {
    sourceId: string;
    coordinates: SearchResultCoordinate[];
    isExpanded: boolean;
    constructor();
    setCoordinates(value: SearchResultCoordinate[]): void;
    setIsExpanded(val: boolean): void;
    dismissCoordinate(value: SearchResultCoordinate): void;
}
export declare const getSearchResultEntry: (result: PlainObject<SearchResultEntry>) => SearchResultEntry;
//# sourceMappingURL=SearchEntry.d.ts.map