TeaSpeak-Client/imports/shared-app/ui/tree/RendererView.d.ts
2021-02-20 18:55:36 +01:00

42 lines
1.4 KiB
TypeScript

import { ReactComponentBase } from "tc-shared/ui/react-elements/ReactComponentBase";
import { Registry } from "tc-shared/events";
import * as React from "react";
import { ChannelTreeUIEvents } from "tc-shared/ui/tree/Definitions";
import { RDPChannelTree, RDPEntry } from "./RendererDataProvider";
export declare class PopoutButton extends React.Component<{
tree: RDPChannelTree;
}, {}> {
render(): JSX.Element;
}
export interface ChannelTreeViewProperties {
events: Registry<ChannelTreeUIEvents>;
dataProvider: RDPChannelTree;
moveThreshold?: number;
}
export interface ChannelTreeViewState {
elementScrollOffset?: number;
scrollOffset: number;
viewHeight: number;
fontSize: number;
treeVersion: number;
smoothScroll: boolean;
tree: RDPEntry[];
treeRevision: number;
}
export declare class ChannelTreeView extends ReactComponentBase<ChannelTreeViewProperties, ChannelTreeViewState> {
static readonly EntryHeightEm = 1.3;
private readonly refContainer;
private resizeObserver;
private scrollFixRequested;
private inViewCallbacks;
constructor(props: any);
componentDidMount(): void;
componentWillUnmount(): void;
private handleVisibilityChanged;
private visibleEntries;
render(): JSX.Element;
private onScroll;
scrollEntryInView(entryId: number, callback?: () => void): void;
getEntryFromPoint(pageX: number, pageY: number): number;
}