/**
 * THIS IS GENERATED CODE!
 * PLEASE DO NOT MODIFY - ALL YOUR WORK WOULD BE LOST!
 */
export declare const typescriptDeclarationFixConstant = 1;
import { UiEvent } from "./UiEvent";
import { TeamAppsEvent } from "../modules/util/TeamAppsEvent";
import { UiComponentConfig } from "./UiComponentConfig";
import { UiTreeGraphNodeConfig } from "./UiTreeGraphNodeConfig";
import { UiColorConfig } from "./UiColorConfig";
import { UiComponentCommandHandler } from "./UiComponentConfig";
export interface UiTreeGraphConfig extends UiComponentConfig {
    _type?: string;
    nodes?: UiTreeGraphNodeConfig[];
    backgroundColor?: UiColorConfig;
    zoomFactor?: number;
    compact?: boolean;
    verticalLayerGap?: number;
    sideListIndent?: number;
    sideListVerticalGap?: number;
    horizontalSiblingGap?: number;
    horizontalNonSignlingGap?: number;
}
export interface UiTreeGraphCommandHandler extends UiComponentCommandHandler {
    update(config: UiTreeGraphConfig): void;
    setZoomFactor(zoomFactor: number): void;
    setNodes(nodes: UiTreeGraphNodeConfig[]): void;
    addNode(node: UiTreeGraphNodeConfig): void;
    removeNode(nodeId: string): void;
    setNodeExpanded(nodeId: string, expanded: boolean): void;
    updateNode(node: UiTreeGraphNodeConfig): void;
    moveToRootNode(): void;
    moveToNode(nodeId: string): void;
}
export interface UiTreeGraphEventSource {
    onNodeClicked: TeamAppsEvent<UiTreeGraph_NodeClickedEvent>;
    onNodeExpandedOrCollapsed: TeamAppsEvent<UiTreeGraph_NodeExpandedOrCollapsedEvent>;
    onParentExpandedOrCollapsed: TeamAppsEvent<UiTreeGraph_ParentExpandedOrCollapsedEvent>;
    onSideListExpandedOrCollapsed: TeamAppsEvent<UiTreeGraph_SideListExpandedOrCollapsedEvent>;
}
export interface UiTreeGraph_NodeClickedEvent extends UiEvent {
    nodeId: string;
}
export interface UiTreeGraph_NodeExpandedOrCollapsedEvent extends UiEvent {
    nodeId: string;
    expanded: boolean;
    lazyLoad: boolean;
}
export interface UiTreeGraph_ParentExpandedOrCollapsedEvent extends UiEvent {
    nodeId: string;
    expanded: boolean;
    lazyLoad: boolean;
}
export interface UiTreeGraph_SideListExpandedOrCollapsedEvent extends UiEvent {
    nodeId: string;
    expanded: boolean;
}
