UNPKG

@aws/pdk

Version:

All documentation is located at: https://aws.github.io/aws-pdk

82 lines (81 loc) 2.82 kB
/*! Copyright [Amazon.com](http://amazon.com/), Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ /** * Available themes. * * Using literal string union rather than enum to prevent downstream requirement * on importing enum (based on Jsii support) */ export type Themes = "light" | "dark"; /** Theme line style values */ export type LineStyle = "solid" | "dotted" | "dashed"; /** Theme group format definition */ export interface GroupFormat { readonly color: string | false; readonly bgcolor: string | false; readonly borderColor: string | false; readonly borderStyle: LineStyle | "none"; readonly labelLocation?: "t" | "b" | "c"; readonly iconPng?: string; } export type ArrowShape = "box" | "crow" | "curve" | "icurve" | "diamond" | "dot" | "inv" | "none" | "normal" | "tee" | "vee" | "odot" | "invdot" | "invodot" | "obox" | "odiamond"; /** Theme arrow format definition */ export interface ArrowFormat { readonly color: string | false; readonly head: ArrowShape; readonly tail: ArrowShape; readonly width: number; readonly style: LineStyle; } /** Theme text dictionary */ export interface ThemeText { readonly default: string; readonly primary: string; readonly secondary: string; readonly tertiary: string; } /** Theme background dictionary */ export interface ThemeBackgrounds { readonly base: string; readonly private: string; readonly public: string; readonly generic: string; } /** Theme group dicionary */ export interface ThemeGroups { readonly cloud: GroupFormat; readonly cloudAlt: GroupFormat; readonly region: GroupFormat; readonly availabilityZone: GroupFormat; readonly securityGroup: GroupFormat; readonly autoScalingGroup: GroupFormat; readonly vpc: GroupFormat; readonly privateSubnet: GroupFormat; readonly publicSubnet: GroupFormat; readonly serverContents: GroupFormat; readonly corporateDataCenter: GroupFormat; readonly ec2InstanceContents: GroupFormat; readonly spotFleet: GroupFormat; readonly awsAccount: GroupFormat; readonly awsIoTGreengrassDeployment: GroupFormat; readonly awsIoTGreengrass: GroupFormat; readonly elasticBeanstalkContainer: GroupFormat; readonly awsStepFunctionsWorkflow: GroupFormat; readonly generic: GroupFormat; readonly genericAlt: GroupFormat; } /** Theme arrow dictionary */ export interface ThemeArrows { readonly default: ArrowFormat; readonly child: ArrowFormat; readonly reference: ArrowFormat; readonly dependency: ArrowFormat; } /** Theme definition */ export interface Theme { readonly id: Themes; readonly text: ThemeText; readonly backgrounds: ThemeBackgrounds; readonly groups: ThemeGroups; readonly arrows: ThemeArrows; }