All files / src/types/playbooks/tasks taskDetails.ts

100% Statements 1/1
100% Branches 0/0
100% Functions 0/0
100% Lines 1/1

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                                    1x                                                        
import {
  Azure,
  Bash,
  Clickhouse,
  Cloudwatch,
  Datadog,
  Documentation,
  Eks,
  ElasticSearch,
  Gke,
  Grafana,
  GrafanaMimir,
  NewRelic,
  Postgres,
  SqlDatabaseConnection,
  Api,
} from "../../taskTypes";
import { Slack } from "../../taskTypes/slack";
import { Sources } from "../sources";
 
type TaskDetailsMapping = {
  [Sources.Documentation]: Documentation;
  [Sources.Cloudwatch]: Cloudwatch;
  [Sources.Grafana]: Grafana;
  [Sources.Datadog]: Datadog;
  [Sources.Clickhouse]: Clickhouse;
  [Sources.NewRelic]: NewRelic;
  [Sources.Postgres]: Postgres;
  [Sources.Eks]: Eks;
  [Sources.SqlDatabaseConnection]: SqlDatabaseConnection;
  [Sources.Api]: Api;
  [Sources.Bash]: Bash;
  [Sources.GrafanaMimir]: GrafanaMimir;
  [Sources.Azure]: Azure;
  [Sources.Gke]: Gke;
  [Sources.ElasticSearch]: ElasticSearch;
  [Sources.Slack]: Slack;
};
 
export type TaskDetails = {
  [K in keyof TaskDetailsMapping]: {
    type: K;
    process_function: string;
    statistic: string;
  } & { [P in K]: TaskDetailsMapping[K] };
}[keyof TaskDetailsMapping];