/** @packageDocumentation
 * @module Views
 */
import { BeEvent, Id64Array, Id64String } from "@itwin/core-bentley";
import { Point2d, Point3d, Range3d, Transform } from "@itwin/core-geometry";
import { AxisAlignedBox3d, HydrateViewStateRequestProps, HydrateViewStateResponseProps, SheetProps, ViewAttachmentProps, ViewDefinition2dProps, ViewStateProps } from "@itwin/core-common";
import { CategorySelectorState } from "./CategorySelectorState";
import { DisplayStyle2dState } from "./DisplayStyleState";
import { IModelConnection } from "./IModelConnection";
import { RenderMemory } from "./render/RenderMemory";
import { DecorateContext, SceneContext } from "./ViewContext";
import { Viewport } from "./Viewport";
import { AttachToViewportArgs, ComputeDisplayTransformArgs, GetAttachmentViewportArgs, ViewState, ViewState2d } from "./ViewState";
import { DrawingViewState } from "./DrawingViewState";
import { DisclosedTileTreeSet } from "./tile/internal";
/** A view of a [SheetModel]($backend).
 * @public
 * @extensions
 */
export declare class SheetViewState extends ViewState2d {
    /** The width and height of the sheet in world coordinates. */
    readonly sheetSize: Point2d;
    private _viewAttachments;
    private readonly _viewedExtents;
    private _onViewAttachmentsReloaded;
    /** Strictly for tests. */
    readonly onViewAttachmentsReloaded: BeEvent<() => void>;
    get attachmentIds(): readonly string[];
    static get className(): string;
    static createFromProps(viewStateData: ViewStateProps, iModel: IModelConnection): SheetViewState;
    toProps(): ViewStateProps;
    /** Strictly for testing. @internal */
    get viewAttachmentProps(): Array<Readonly<ViewAttachmentProps>>;
    /** Strictly for testing. @internal */
    get viewAttachmentInfos(): readonly Id64String[] | Array<{
        attachedView: ViewState;
    }>;
    /** Strictly for testing. @internal */
    get attachments(): object[] | undefined;
    isDrawingView(): this is DrawingViewState;
    isSheetView(): this is SheetViewState;
    constructor(props: ViewDefinition2dProps, iModel: IModelConnection, categories: CategorySelectorState, displayStyle: DisplayStyle2dState, sheetProps: SheetProps, attachments: Id64Array);
    getOrigin(): Point3d;
    getExtents(): import("@itwin/core-geometry").Vector3d;
    /** Overrides [[ViewState.discloseTileTrees]] to include tile trees associated with [ViewAttachment]($backend)s displayed on this sheet. */
    discloseTileTrees(trees: DisclosedTileTreeSet): void;
    /** @internal */
    collectNonTileTreeStatistics(stats: RenderMemory.Statistics): void;
    get defaultExtentLimits(): {
        min: number;
        max: number;
    };
    getViewedExtents(): AxisAlignedBox3d;
    /** @internal */
    protected preload(hydrateRequest: HydrateViewStateRequestProps): void;
    /** @internal */
    protected postload(hydrateResponse: HydrateViewStateResponseProps): Promise<void>;
    /** @internal */
    createScene(context: SceneContext): void;
    /** @internal */
    get secondaryViewports(): Iterable<Viewport>;
    /** @internal */
    private queryAttachmentIds;
    changeViewedModel(modelId: Id64String): Promise<void>;
    /** See [[ViewState.attachToViewport]]. */
    attachToViewport(args: AttachToViewportArgs): void;
    /** See [[ViewState.detachFromViewport]]. */
    detachFromViewport(): void;
    get areAllTileTreesLoaded(): boolean;
    /** @internal Strictly for testing */
    areAllAttachmentsLoaded(): boolean;
    /** Create a sheet border decoration graphic. */
    private createBorder;
    /** @internal */
    decorate(context: DecorateContext): void;
    computeFitRange(): Range3d;
    /** @internal */
    getAttachmentViewport(args: GetAttachmentViewportArgs): Viewport | undefined;
    /** @beta */
    computeDisplayTransform(args: ComputeDisplayTransformArgs): Transform | undefined;
}
//# sourceMappingURL=SheetViewState.d.ts.map