@rcsb/rcsb-saguaro
Version:
RCSB 1D Feature Viewer
50 lines (49 loc) • 1.96 kB
TypeScript
import React from "react";
import { RcsbFvRowExtendedConfigInterface } from "../RcsbFvConfig/RcsbFvConfigInterface";
import { RcsbFvContextManager } from "../RcsbFvContextManager/RcsbFvContextManager";
import { RcsbSelection } from "../../RcsbBoard/RcsbSelection";
import { RcsbScaleInterface } from "../../RcsbBoard/RcsbD3/RcsbD3ScaleFactory";
/**Board track React component interface*/
interface RcsbFvRowInterface {
readonly id: string;
readonly boardId: string;
readonly rowNumber: number;
readonly rowConfigData: RcsbFvRowExtendedConfigInterface;
readonly contextManager: RcsbFvContextManager;
readonly xScale: RcsbScaleInterface;
readonly selection: RcsbSelection;
readonly renderSchedule: "async" | "sync" | "fixed";
}
/**Board track React state interface*/
interface RcsbFvRowState {
readonly rowHeight: number;
readonly mounted: boolean;
readonly rowConfigData: RcsbFvRowExtendedConfigInterface;
readonly display: boolean;
readonly titleGlow: boolean;
}
/**Board track React Component className*/
export declare class RcsbFvRow extends React.Component<RcsbFvRowInterface, RcsbFvRowState> {
readonly state: RcsbFvRowState;
/**Subscription to events*/
private subscription;
private rowRef;
constructor(props: RcsbFvRowInterface);
render(): import("react/jsx-runtime").JSX.Element;
componentDidMount(): void;
componentWillUnmount(): void;
/**Subscribe className to rxjs events (adding tracks, change scale, update board config)
* @return rxjs Subscription object
* */
private subscribe;
private hoverRow;
private checkHoveredRow;
private changeClass;
/**This function will be called once the final height of the track is known*/
private callbackRcsbFvRowTrack;
/**Returns the full track width (title+annotations) and height
* @return Board track full width
* */
configStyle(): React.CSSProperties;
}
export {};