interface Cardinality { sourceCount?: number; targetCount?: number; fetchMore?: boolean; refs: number; } interface Node { kind: string; name: string; title?: string; subtitle?: string; color?: string; targetCount?: number; sourceCount?: number; tags?: string[]; placeHolder?: boolean; cardinality?: Cardinality; selectedCardinality?: Cardinality; hasRelatedSourceOfOtherKinds?: boolean; hasRelatedSourceOfSameKind?: boolean; hasRelationsOfSameKinds?: boolean; } interface BasicNode { kind: string; name: string; } interface Analytics { traffic: number; environment?: string; errors?: number; } interface Relation { source: Node; target: Node; analytics?: Analytics; environment?: string; } declare enum IncludeKind { WITH_SAME_TARGET = "WITH_SAME_TARGET" } interface SankeyChartDataOptions { noTag?: string; noTagSuffixCharacter?: string; relationDefaultWidth?: number; defaultColor?: string; tagColorMap?: { [key: string]: string; }; kinds: KindMeta[]; showRelatedKinds?: boolean; selectAndFilter?: boolean; } interface Kind { name: string; title?: string; color?: string; } interface KindMeta extends Kind { includeAlternative?: IncludeKind; } declare class SankeyChartData { selectedNode?: Node; nodes: Node[]; dependencies: { relations: Relation[]; hasRelatedSourceOfOtherKinds: boolean; }; originalData: { name: string; color?: string; nodes: Node[]; relations: Relation[]; }; nodesByKinds: { [key: string]: Node[]; }; title?: KindMeta; options: SankeyChartDataOptions; constructor(data: { name: string; color?: string; nodes?: Node[]; relations?: Relation[]; }, options: SankeyChartDataOptions); initialize(): void; resetColors(): void; setOptions(options: SankeyChartDataOptions): void; appendData(data: { nodes: Node[]; relations: Relation[]; }, selectedNode?: Node): void; getNodes(): Node[]; getNodesByKind(kind: string): Node[]; getRelations(): Relation[]; getKinds(): Kind[]; getTitle(): KindMeta | undefined; setTitle(title?: KindMeta): void; getSelectedNode(): Node | undefined; selectNode(node?: Node): Node | undefined; sortNodes(nodes: Node[]): void; initializeSortRelations(): void; initializeRelationsInfo(): void; getIndexByKind(kind: string, offset: number): number; getNodeTagColor: (node: Node) => string | undefined; appendNextNode(node: Node, offset: number): Node | undefined; searchByName(node: { kind: string; name: string; }): Node[]; findByName(name: string, dataArray: Node[]): Node | undefined; filterDependencies(selectedNode: Node, selectedKind?: KindMeta): { relations: Relation[]; hasRelatedSourceOfOtherKinds: boolean; }; filterNodes(relations: Relation[]): Node[]; mergeData(originData: { nodes: Node[]; relations: Relation[]; }, appendData: { nodes: Node[]; relations: Relation[]; }): { nodes: Node[]; relations: Relation[]; }; } export { SankeyChartData, Node, Relation, SankeyChartDataOptions, Kind, Analytics, BasicNode, IncludeKind, Cardinality };