@atomist/sdm-pack-aspect
Version:
an Atomist SDM Extension Pack for visualizing drift across an organization
58 lines • 1.91 kB
TypeScript
import * as React from "react";
import { TagTree } from "../lib/routes/api";
import { TagUsage } from "../lib/tree/sunburst";
export interface CurrentIdealForDisplay {
displayValue: string;
}
export interface PossibleIdealForDisplay {
url?: string;
fingerprintName: string;
displayValue: string;
stringified: string;
}
export declare type FieldToDisplay = string;
export interface SunburstPageProps {
readonly workspaceId: string;
readonly heading: string;
readonly subheading?: string;
readonly currentIdeal: CurrentIdealForDisplay;
readonly possibleIdeals: PossibleIdealForDisplay[];
readonly query: string;
readonly dataUrl: string;
readonly tree: TagTree;
/**
* Tags selected
*/
readonly selectedTags: string[];
/**
* If these fields exist on a node, display them on hover
*/
fieldsToDisplay: FieldToDisplay[];
}
/**
* Class backing displayTagButtons
*/
export declare class TagGroup {
readonly tagSelection: string[];
private readonly tagsInData;
private readonly totalProjectsDisplayed;
constructor(tagSelection: string[], treeWithTags?: {
tags?: TagUsage[];
matchingRepoCount?: number;
});
allTagNames(): string[];
isRequired(tagName: string): boolean;
isExcluded(tagName: string): boolean;
isWarning(tagName: string): boolean;
isError(tagName: string): boolean;
getDescription(tagName: string): string | undefined;
getPercentageOfProjects(tagName: string): number;
describeExclude(tagName: string): string;
describeRequire(tagName: string): string;
tagSelectionForRequire(tagName: string): string[];
tagSelectionForExclude(tagName: string): string[];
private pleaseExclude;
private dontFeelExcluded;
}
export declare function SunburstPage(props: SunburstPageProps): React.ReactElement;
//# sourceMappingURL=sunburstPage.d.ts.map