import { Range, RangeOption, RenderOption, TransformationOptionType } from '../options/option-models';
/** The category containing proxy-view options. */
export declare class ProxyViewCategory implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly INSTANCE: ProxyViewCategory;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: any;
    currentValue: any;
}
/** Whether the proxy-view is enabled. */
export declare class ProxyViewEnabled implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    currentValue: boolean;
}
/** Part of calculating the proxies' size. */
export declare class ProxyViewSize implements RangeOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: number;
    static readonly RANGE: Range;
    static readonly STEPSIZE: number;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: number;
    readonly description: string;
    readonly renderCategory: string;
    readonly range: Range;
    readonly stepSize: number;
    readonly values: any[];
    currentValue: number;
    debug: boolean;
}
/**
 * What strategy to use to decrease proxy clutter.
 * Clustering clusters overlapping proxies into a single cluster.
 * Opacity by Distance increases transparency for distant proxies.
 */
export declare class ProxyViewDecreaseProxyClutter implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly CHOICE_OFF: string;
    static readonly CHOICE_CLUSTERING: string;
    static readonly CHOICE_OPACITY: string;
    static readonly DEFAULT: string;
    static readonly CHOICES: string[];
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: string;
    readonly description: string;
    readonly renderCategory: string;
    readonly values: string[];
    readonly debug: boolean;
    currentValue: string;
}
/**
 * What strategy to use for routing edge proxies, if enabled.
 * Edge proxies connect on-screen nodes with proxies instead of their off-screen counterparts.
 * Straight-Edge-Routing draws a straight line between node and proxy.
 * Along-Border-Routing reuses most of the original edge's path and routes the remaining path to the proxy along the border.
 */
export declare class ProxyViewEnableEdgeProxies implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly CHOICE_OFF: string;
    static readonly CHOICE_STRAIGHT_EDGE_ROUTING: string;
    static readonly CHOICE_ALONG_BORDER_ROUTING: string;
    static readonly DEFAULT: string;
    static readonly CHOICES: string[];
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: string;
    readonly description: string;
    readonly renderCategory: string;
    readonly values: string[];
    readonly debug: boolean;
    currentValue: string;
}
/**
 * Whether segment proxies should be created.
 * Segment proxies connect off-screen segments of an edge.
 */
export declare class ProxyViewEnableSegmentProxies implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to use title scaling if smart zoom is enabled. */
export declare class ProxyViewTitleScaling implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether edge proxies should be drawn above node proxies. */
export declare class ProxyViewDrawEdgesAboveNodes implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** The category containing debug proxy-view options. */
export declare class ProxyViewDebugCategory implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly INSTANCE: ProxyViewDebugCategory;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: any;
    readonly debug: boolean;
    currentValue: any;
}
/** Whether proxies should be interactable. */
export declare class ProxyViewInteractiveProxies implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to highlight proxies that are connected to the selected node. */
export declare class ProxyViewHighlightSelected implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to decrease opacity of proxies that are not connected to the selected node and increase otherwise. */
export declare class ProxyViewOpacityBySelected implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to use the synthesis specified proxy-rendering. */
export declare class ProxyViewUseSynthesisProxyRendering implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to use a simple version of Along-Border-Routing. Can cause strange artifacts if an edge e.g. oscillates. */
export declare class ProxyViewSimpleAlongBorderRouting implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to cap proxies in their parent node. */
export declare class ProxyViewCapProxyToParent implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to show proxies immediately, e.g. whether proxies should be created once a node is partially off-screen. */
export declare class ProxyViewShowProxiesImmediately implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to show proxies early, e.g. whether proxies should be created before a node is fully off-screen. */
export declare class ProxyViewShowProxiesEarly implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** The amount by which to show proxies early if enabled. The number indicates a percentage of the minimum of the canvas' dimensions. */
export declare class ProxyViewShowProxiesEarlyNumber implements RangeOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: number;
    static readonly RANGE: Range;
    static readonly STEPSIZE: number;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: number;
    readonly description: string;
    readonly renderCategory: string;
    readonly range: Range;
    readonly stepSize: number;
    readonly values: any[];
    readonly debug: boolean;
    currentValue: number;
}
/** Whether to change stacking order such that close proxies are stacked above distant ones. */
export declare class ProxyViewStackingOrderByDistance implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to change stacking order such that fully opaque proxies are stacked above transparent ones. */
export declare class ProxyViewStackingOrderByOpacity implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to change stacking order such that selected proxies are stacked above others. */
export declare class ProxyViewStackingOrderBySelected implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether proxies should be shown for nodes that aren't rendered because of the parent's detail level. */
export declare class ProxyViewUseDetailLevel implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether edge proxies should be drawn when the source or target point is off-screen. */
export declare class ProxyViewEdgesToOffScreenPoint implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether edges should become transparent when the corresponding edge proxies are on-screen. This actually modifies the diagram. */
export declare class ProxyViewTransparentEdges implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether proxies should be as big as their corresponding node. */
export declare class ProxyViewOriginalNodeScale implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether to cap scaling of proxies to 1. */
export declare class ProxyViewCapScaleToOne implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether clusters should be transparent according to the average of their contained proxies' opacities. */
export declare class ProxyViewClusterTransparent implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether cascading clustering should be used, i.e. take transitive overlap into consideration. */
export declare class ProxyViewClusteringCascading implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
/** Whether the sweep line algorithm should be used for clustering. Defaults to false since evaluated to be slower in the current implementation as-is. */
export declare class ProxyViewClusteringSweepLine implements RenderOption {
    static readonly ID: string;
    static readonly NAME: string;
    static readonly DESCRIPTION: string;
    static readonly DEFAULT: boolean;
    readonly id: string;
    readonly name: string;
    readonly type: TransformationOptionType;
    readonly initialValue: boolean;
    readonly description: string;
    readonly renderCategory: string;
    readonly debug: boolean;
    currentValue: boolean;
}
//# sourceMappingURL=proxy-view-options.d.ts.map