All files / modules/85-cv/pages/monitored-service/CVMonitoredService CVMonitoredService.types.ts

100% Statements 6/6
100% Branches 2/2
100% Functions 1/1
100% Lines 6/6

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73                                                          16x 16x 16x 16x 16x 16x                                                                            
/*
 * Copyright 2021 Harness Inc. All rights reserved.
 * Use of this source code is governed by the PolyForm Shield 1.0.0 license
 * that can be found in the licenses directory at the root of this repository, also available at
 * https://polyformproject.org/wp-content/uploads/2020/06/PolyForm-Shield-1.0.0.txt.
 */
 
import type { FontVariation, Color } from '@harness/design-system'
import type { CountServiceDTO, PageMonitoredServiceListItemDTO, RiskData } from 'services/cv'
 
import type { PermissionsRequest } from '@rbac/hooks/usePermission'
import type { PermissionIdentifier } from '@rbac/interfaces/PermissionIdentifier'
 
interface ContextMenuRbacPermissions {
  edit: Omit<PermissionsRequest, 'permissions'> & { permission: PermissionIdentifier }
  delete: Omit<PermissionsRequest, 'permissions'> & { permission: PermissionIdentifier }
}
 
export interface ContextMenuActionsProps {
  onEdit?(): void
  onDelete?(): void
  titleText: string
  contentText: string | JSX.Element
  confirmButtonText?: string
  deleteLabel?: string
  editLabel?: string
  RbacPermissions?: ContextMenuRbacPermissions
}
 
export enum FilterTypes {
  ALL = 'ALL',
  RISK = 'RISK',
  DEPLOYMENT = 'DEPLOYMENT',
  INFRASTRUCTURE = 'INFRASTRUCTURE',
  INSIGHT = 'INSIGHT'
}
 
// MonitoredServiceListView
 
export interface MonitoredServiceListProps {
  page: number
  setPage: (n: number) => void
  createButton: JSX.Element
  environmentIdentifier?: string
  selectedFilter: FilterTypes
  onFilter: (type: FilterTypes) => void
  serviceCountData: CountServiceDTO | null
  serviceCountLoading?: boolean
  serviceCountErrorMessage?: string
  refetchServiceCountData: () => Promise<void>
}
 
export interface MonitoredServiceListViewProps {
  setPage: (n: number) => void
  selectedFilter: FilterTypes
  onFilter: (type: FilterTypes) => void
  onEditService: (identifier: string) => void
  onToggleService: (identifier: string, checked: boolean) => Promise<void>
  onDeleteService: (identifier: string) => Promise<void>
  serviceCountData: CountServiceDTO | null
  refetchServiceCountData: () => Promise<void>
  healthMonitoringFlagLoading?: boolean
  monitoredServiceListData?: PageMonitoredServiceListItemDTO
}
 
export interface RiskTagWithLabelProps {
  riskData?: RiskData
  labelVariation?: FontVariation
  color?: Color
  label?: string
  isDarkBackground?: boolean
}