123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- import {IssueConfigField} from 'sentry/types/index';
- import {SchemaFormConfig} from 'sentry/views/organizationIntegrations/sentryAppExternalForm';
- type IssueAlertRuleFormField =
- | {
- type: 'choice';
- choices?: [string, string][];
- initial?: string;
- placeholder?: string;
- }
- | {
- type: 'string';
- initial?: string;
- placeholder?: string;
- }
- | {
- type: 'number';
- initial?: string;
- placeholder?: number | string;
- };
- export type IssueAlertRuleActionTemplate = {
- enabled: boolean;
- id: string;
- label: string;
- prompt: string;
- actionType?: 'ticket' | 'sentryapp';
- formFields?:
- | {
- [key: string]: IssueAlertRuleFormField;
- }
- | SchemaFormConfig;
- link?: string;
- sentryAppInstallationUuid?: string;
- ticketType?: string;
- };
- export type IssueAlertRuleConditionTemplate = IssueAlertRuleActionTemplate;
- export type IssueAlertRuleAction = Omit<
- IssueAlertRuleActionTemplate,
- 'formFields' | 'enabled'
- > & {
- dynamic_form_fields?: IssueConfigField[];
- } & {
-
- [key: string]: number | string;
- };
- export type IssueAlertRuleCondition = Omit<
- IssueAlertRuleConditionTemplate,
- 'formFields' | 'enabled'
- > & {
- dynamic_form_fields?: IssueConfigField[];
- } & {
-
- [key: string]: number | string;
- };
- export type UnsavedIssueAlertRule = {
-
- actionMatch: 'all' | 'any' | 'none';
- actions: IssueAlertRuleAction[];
- conditions: IssueAlertRuleCondition[];
-
- filterMatch: 'all' | 'any' | 'none';
- filters: IssueAlertRuleCondition[];
- frequency: number;
- name: string;
- environment?: null | string;
- owner?: string | null;
- };
- export type IssueAlertRule = UnsavedIssueAlertRule & {
- createdBy: {email: string; id: number; name: string} | null;
- dateCreated: string;
- id: string;
- projects: string[];
- };
- export enum MailActionTargetType {
- IssueOwners = 'IssueOwners',
- Team = 'Team',
- Member = 'Member',
- }
- export enum AssigneeTargetType {
- Unassigned = 'Unassigned',
- Team = 'Team',
- Member = 'Member',
- }
- export type NoteType = {
- mentions: string[];
- text: string;
- };
|