import type { ComputedView, DiagramView, OverviewGraph, ViewId } from '@likec4/core';
import { type Cancellation } from 'langium';
import type { LikeC4Services } from '../module';
export type GraphvizOut = {
    dot: string;
    diagram: DiagramView;
};
type GraphvizSvgOut = {
    id: ViewId;
    dot: string;
    svg: string;
};
export declare class LikeC4Views {
    private services;
    private cache;
    private viewsWithReportedErrors;
    constructor(services: LikeC4Services);
    private get layouter();
    computedViews(cancelToken?: Cancellation.CancellationToken): Promise<ComputedView[]>;
    layoutAllViews(cancelToken?: Cancellation.CancellationToken): Promise<Array<Readonly<GraphvizOut>>>;
    layoutView(viewId: ViewId, cancelToken?: Cancellation.CancellationToken): Promise<GraphvizOut | null>;
    diagrams(): Promise<Array<DiagramView>>;
    viewsAsGraphvizOut(): Promise<Array<GraphvizSvgOut>>;
    overviewGraph(): Promise<OverviewGraph>;
}
export {};
