import { IncidentRecordStatus, ItemType, RegionStatus, ReplicationSetStatus, SortOrder, SsmTargetAccount, TimelineEventSort, VariableType, } from "./enums"; export type DynamicSsmParameterValue = | DynamicSsmParameterValue.VariableMember | DynamicSsmParameterValue.$UnknownMember; export declare namespace DynamicSsmParameterValue { interface VariableMember { variable: VariableType; $unknown?: never; } interface $UnknownMember { variable?: never; $unknown: [string, any]; } interface Visitor { variable: (value: VariableType) => T; _: (name: string, value: any) => T; } } export interface SsmAutomation { roleArn: string | undefined; documentName: string | undefined; documentVersion?: string | undefined; targetAccount?: SsmTargetAccount | undefined; parameters?: Record | undefined; dynamicParameters?: Record | undefined; } export type Action = Action.SsmAutomationMember | Action.$UnknownMember; export declare namespace Action { interface SsmAutomationMember { ssmAutomation: SsmAutomation; $unknown?: never; } interface $UnknownMember { ssmAutomation?: never; $unknown: [string, any]; } interface Visitor { ssmAutomation: (value: SsmAutomation) => T; _: (name: string, value: any) => T; } } export interface AddRegionAction { regionName: string | undefined; sseKmsKeyId?: string | undefined; } export type AttributeValueList = | AttributeValueList.IntegerValuesMember | AttributeValueList.StringValuesMember | AttributeValueList.$UnknownMember; export declare namespace AttributeValueList { interface StringValuesMember { stringValues: string[]; integerValues?: never; $unknown?: never; } interface IntegerValuesMember { stringValues?: never; integerValues: number[]; $unknown?: never; } interface $UnknownMember { stringValues?: never; integerValues?: never; $unknown: [string, any]; } interface Visitor { stringValues: (value: string[]) => T; integerValues: (value: number[]) => T; _: (name: string, value: any) => T; } } export type AutomationExecution = | AutomationExecution.SsmExecutionArnMember | AutomationExecution.$UnknownMember; export declare namespace AutomationExecution { interface SsmExecutionArnMember { ssmExecutionArn: string; $unknown?: never; } interface $UnknownMember { ssmExecutionArn?: never; $unknown: [string, any]; } interface Visitor { ssmExecutionArn: (value: string) => T; _: (name: string, value: any) => T; } } export interface BatchGetIncidentFindingsInput { incidentRecordArn: string | undefined; findingIds: string[] | undefined; } export interface BatchGetIncidentFindingsError { findingId: string | undefined; code: string | undefined; message: string | undefined; } export interface CloudFormationStackUpdate { startTime: Date | undefined; endTime?: Date | undefined; stackArn: string | undefined; } export interface CodeDeployDeployment { startTime: Date | undefined; endTime?: Date | undefined; deploymentGroupArn: string | undefined; deploymentId: string | undefined; } export type FindingDetails = | FindingDetails.CloudFormationStackUpdateMember | FindingDetails.CodeDeployDeploymentMember | FindingDetails.$UnknownMember; export declare namespace FindingDetails { interface CodeDeployDeploymentMember { codeDeployDeployment: CodeDeployDeployment; cloudFormationStackUpdate?: never; $unknown?: never; } interface CloudFormationStackUpdateMember { codeDeployDeployment?: never; cloudFormationStackUpdate: CloudFormationStackUpdate; $unknown?: never; } interface $UnknownMember { codeDeployDeployment?: never; cloudFormationStackUpdate?: never; $unknown: [string, any]; } interface Visitor { codeDeployDeployment: (value: CodeDeployDeployment) => T; cloudFormationStackUpdate: (value: CloudFormationStackUpdate) => T; _: (name: string, value: any) => T; } } export interface Finding { id: string | undefined; creationTime: Date | undefined; lastModifiedTime: Date | undefined; details?: FindingDetails | undefined; } export interface BatchGetIncidentFindingsOutput { findings: Finding[] | undefined; errors: BatchGetIncidentFindingsError[] | undefined; } export interface EmptyChatChannel {} export type ChatChannel = | ChatChannel.ChatbotSnsMember | ChatChannel.EmptyMember | ChatChannel.$UnknownMember; export declare namespace ChatChannel { interface EmptyMember { empty: EmptyChatChannel; chatbotSns?: never; $unknown?: never; } interface ChatbotSnsMember { empty?: never; chatbotSns: string[]; $unknown?: never; } interface $UnknownMember { empty?: never; chatbotSns?: never; $unknown: [string, any]; } interface Visitor { empty: (value: EmptyChatChannel) => T; chatbotSns: (value: string[]) => T; _: (name: string, value: any) => T; } } export type Condition = | Condition.AfterMember | Condition.BeforeMember | Condition.EqualsMember | Condition.$UnknownMember; export declare namespace Condition { interface BeforeMember { before: Date; after?: never; equals?: never; $unknown?: never; } interface AfterMember { before?: never; after: Date; equals?: never; $unknown?: never; } interface EqualsMember { before?: never; after?: never; equals: AttributeValueList; $unknown?: never; } interface $UnknownMember { before?: never; after?: never; equals?: never; $unknown: [string, any]; } interface Visitor { before: (value: Date) => T; after: (value: Date) => T; equals: (value: AttributeValueList) => T; _: (name: string, value: any) => T; } } export interface RegionMapInputValue { sseKmsKeyId?: string | undefined; } export interface CreateReplicationSetInput { regions: Record | undefined; clientToken?: string | undefined; tags?: Record | undefined; } export interface CreateReplicationSetOutput { arn: string | undefined; } export type NotificationTargetItem = | NotificationTargetItem.SnsTopicArnMember | NotificationTargetItem.$UnknownMember; export declare namespace NotificationTargetItem { interface SnsTopicArnMember { snsTopicArn: string; $unknown?: never; } interface $UnknownMember { snsTopicArn?: never; $unknown: [string, any]; } interface Visitor { snsTopicArn: (value: string) => T; _: (name: string, value: any) => T; } } export interface IncidentTemplate { title: string | undefined; impact: number | undefined; summary?: string | undefined; dedupeString?: string | undefined; notificationTargets?: NotificationTargetItem[] | undefined; incidentTags?: Record | undefined; } export interface PagerDutyIncidentConfiguration { serviceId: string | undefined; } export interface PagerDutyConfiguration { name: string | undefined; secretId: string | undefined; pagerDutyIncidentConfiguration: PagerDutyIncidentConfiguration | undefined; } export type Integration = Integration.PagerDutyConfigurationMember | Integration.$UnknownMember; export declare namespace Integration { interface PagerDutyConfigurationMember { pagerDutyConfiguration: PagerDutyConfiguration; $unknown?: never; } interface $UnknownMember { pagerDutyConfiguration?: never; $unknown: [string, any]; } interface Visitor { pagerDutyConfiguration: (value: PagerDutyConfiguration) => T; _: (name: string, value: any) => T; } } export interface CreateResponsePlanInput { clientToken?: string | undefined; name: string | undefined; displayName?: string | undefined; incidentTemplate: IncidentTemplate | undefined; chatChannel?: ChatChannel | undefined; engagements?: string[] | undefined; actions?: Action[] | undefined; tags?: Record | undefined; integrations?: Integration[] | undefined; } export interface CreateResponsePlanOutput { arn: string | undefined; } export type EventReference = | EventReference.RelatedItemIdMember | EventReference.ResourceMember | EventReference.$UnknownMember; export declare namespace EventReference { interface ResourceMember { resource: string; relatedItemId?: never; $unknown?: never; } interface RelatedItemIdMember { resource?: never; relatedItemId: string; $unknown?: never; } interface $UnknownMember { resource?: never; relatedItemId?: never; $unknown: [string, any]; } interface Visitor { resource: (value: string) => T; relatedItemId: (value: string) => T; _: (name: string, value: any) => T; } } export interface CreateTimelineEventInput { clientToken?: string | undefined; incidentRecordArn: string | undefined; eventTime: Date | undefined; eventType: string | undefined; eventData: string | undefined; eventReferences?: EventReference[] | undefined; } export interface CreateTimelineEventOutput { incidentRecordArn: string | undefined; eventId: string | undefined; } export interface DeleteIncidentRecordInput { arn: string | undefined; } export interface DeleteIncidentRecordOutput {} export interface DeleteRegionAction { regionName: string | undefined; } export interface DeleteReplicationSetInput { arn: string | undefined; } export interface DeleteReplicationSetOutput {} export interface DeleteResourcePolicyInput { resourceArn: string | undefined; policyId: string | undefined; } export interface DeleteResourcePolicyOutput {} export interface DeleteResponsePlanInput { arn: string | undefined; } export interface DeleteResponsePlanOutput {} export interface DeleteTimelineEventInput { incidentRecordArn: string | undefined; eventId: string | undefined; } export interface DeleteTimelineEventOutput {} export interface EventSummary { incidentRecordArn: string | undefined; eventId: string | undefined; eventTime: Date | undefined; eventUpdatedTime: Date | undefined; eventType: string | undefined; eventReferences?: EventReference[] | undefined; } export interface Filter { key: string | undefined; condition: Condition | undefined; } export interface FindingSummary { id: string | undefined; lastModifiedTime: Date | undefined; } export interface GetIncidentRecordInput { arn: string | undefined; } export interface IncidentRecordSource { createdBy: string | undefined; invokedBy?: string | undefined; resourceArn?: string | undefined; source: string | undefined; } export interface IncidentRecord { arn: string | undefined; title: string | undefined; summary?: string | undefined; status: IncidentRecordStatus | undefined; impact: number | undefined; creationTime: Date | undefined; resolvedTime?: Date | undefined; lastModifiedTime: Date | undefined; lastModifiedBy: string | undefined; automationExecutions?: AutomationExecution[] | undefined; incidentRecordSource: IncidentRecordSource | undefined; dedupeString: string | undefined; chatChannel?: ChatChannel | undefined; notificationTargets?: NotificationTargetItem[] | undefined; } export interface GetIncidentRecordOutput { incidentRecord: IncidentRecord | undefined; } export interface GetReplicationSetInput { arn: string | undefined; } export interface RegionInfo { sseKmsKeyId?: string | undefined; status: RegionStatus | undefined; statusMessage?: string | undefined; statusUpdateDateTime: Date | undefined; } export interface ReplicationSet { arn?: string | undefined; regionMap: Record | undefined; status: ReplicationSetStatus | undefined; deletionProtected: boolean | undefined; createdTime: Date | undefined; createdBy: string | undefined; lastModifiedTime: Date | undefined; lastModifiedBy: string | undefined; } export interface GetReplicationSetOutput { replicationSet: ReplicationSet | undefined; } export interface GetResourcePoliciesInput { resourceArn: string | undefined; maxResults?: number | undefined; nextToken?: string | undefined; } export interface ResourcePolicy { policyDocument: string | undefined; policyId: string | undefined; ramResourceShareRegion: string | undefined; } export interface GetResourcePoliciesOutput { resourcePolicies: ResourcePolicy[] | undefined; nextToken?: string | undefined; } export interface GetResponsePlanInput { arn: string | undefined; } export interface GetResponsePlanOutput { arn: string | undefined; name: string | undefined; displayName?: string | undefined; incidentTemplate: IncidentTemplate | undefined; chatChannel?: ChatChannel | undefined; engagements?: string[] | undefined; actions?: Action[] | undefined; integrations?: Integration[] | undefined; } export interface GetTimelineEventInput { incidentRecordArn: string | undefined; eventId: string | undefined; } export interface TimelineEvent { incidentRecordArn: string | undefined; eventId: string | undefined; eventTime: Date | undefined; eventUpdatedTime: Date | undefined; eventType: string | undefined; eventData: string | undefined; eventReferences?: EventReference[] | undefined; } export interface GetTimelineEventOutput { event: TimelineEvent | undefined; } export interface IncidentRecordSummary { arn: string | undefined; title: string | undefined; status: IncidentRecordStatus | undefined; impact: number | undefined; creationTime: Date | undefined; resolvedTime?: Date | undefined; incidentRecordSource: IncidentRecordSource | undefined; } export interface PagerDutyIncidentDetail { id: string | undefined; autoResolve?: boolean | undefined; secretId?: string | undefined; } export type ItemValue = | ItemValue.ArnMember | ItemValue.MetricDefinitionMember | ItemValue.PagerDutyIncidentDetailMember | ItemValue.UrlMember | ItemValue.$UnknownMember; export declare namespace ItemValue { interface ArnMember { arn: string; url?: never; metricDefinition?: never; pagerDutyIncidentDetail?: never; $unknown?: never; } interface UrlMember { arn?: never; url: string; metricDefinition?: never; pagerDutyIncidentDetail?: never; $unknown?: never; } interface MetricDefinitionMember { arn?: never; url?: never; metricDefinition: string; pagerDutyIncidentDetail?: never; $unknown?: never; } interface PagerDutyIncidentDetailMember { arn?: never; url?: never; metricDefinition?: never; pagerDutyIncidentDetail: PagerDutyIncidentDetail; $unknown?: never; } interface $UnknownMember { arn?: never; url?: never; metricDefinition?: never; pagerDutyIncidentDetail?: never; $unknown: [string, any]; } interface Visitor { arn: (value: string) => T; url: (value: string) => T; metricDefinition: (value: string) => T; pagerDutyIncidentDetail: (value: PagerDutyIncidentDetail) => T; _: (name: string, value: any) => T; } } export interface ItemIdentifier { value: ItemValue | undefined; type: ItemType | undefined; } export interface ListIncidentFindingsInput { incidentRecordArn: string | undefined; maxResults?: number | undefined; nextToken?: string | undefined; } export interface ListIncidentFindingsOutput { findings: FindingSummary[] | undefined; nextToken?: string | undefined; } export interface ListIncidentRecordsInput { filters?: Filter[] | undefined; maxResults?: number | undefined; nextToken?: string | undefined; } export interface ListIncidentRecordsOutput { incidentRecordSummaries: IncidentRecordSummary[] | undefined; nextToken?: string | undefined; } export interface ListRelatedItemsInput { incidentRecordArn: string | undefined; maxResults?: number | undefined; nextToken?: string | undefined; } export interface RelatedItem { identifier: ItemIdentifier | undefined; title?: string | undefined; generatedId?: string | undefined; } export interface ListRelatedItemsOutput { relatedItems: RelatedItem[] | undefined; nextToken?: string | undefined; } export interface ListReplicationSetsInput { maxResults?: number | undefined; nextToken?: string | undefined; } export interface ListReplicationSetsOutput { replicationSetArns: string[] | undefined; nextToken?: string | undefined; } export interface ListResponsePlansInput { maxResults?: number | undefined; nextToken?: string | undefined; } export interface ResponsePlanSummary { arn: string | undefined; name: string | undefined; displayName?: string | undefined; } export interface ListResponsePlansOutput { responsePlanSummaries: ResponsePlanSummary[] | undefined; nextToken?: string | undefined; } export interface ListTagsForResourceRequest { resourceArn: string | undefined; } export interface ListTagsForResourceResponse { tags: Record | undefined; } export interface ListTimelineEventsInput { incidentRecordArn: string | undefined; filters?: Filter[] | undefined; sortBy?: TimelineEventSort | undefined; sortOrder?: SortOrder | undefined; maxResults?: number | undefined; nextToken?: string | undefined; } export interface ListTimelineEventsOutput { eventSummaries: EventSummary[] | undefined; nextToken?: string | undefined; } export interface PutResourcePolicyInput { resourceArn: string | undefined; policy: string | undefined; } export interface PutResourcePolicyOutput { policyId: string | undefined; } export type RelatedItemsUpdate = | RelatedItemsUpdate.ItemToAddMember | RelatedItemsUpdate.ItemToRemoveMember | RelatedItemsUpdate.$UnknownMember; export declare namespace RelatedItemsUpdate { interface ItemToAddMember { itemToAdd: RelatedItem; itemToRemove?: never; $unknown?: never; } interface ItemToRemoveMember { itemToAdd?: never; itemToRemove: ItemIdentifier; $unknown?: never; } interface $UnknownMember { itemToAdd?: never; itemToRemove?: never; $unknown: [string, any]; } interface Visitor { itemToAdd: (value: RelatedItem) => T; itemToRemove: (value: ItemIdentifier) => T; _: (name: string, value: any) => T; } } export interface TriggerDetails { source: string | undefined; triggerArn?: string | undefined; timestamp: Date | undefined; rawData?: string | undefined; } export interface StartIncidentInput { clientToken?: string | undefined; responsePlanArn: string | undefined; title?: string | undefined; impact?: number | undefined; triggerDetails?: TriggerDetails | undefined; relatedItems?: RelatedItem[] | undefined; } export interface StartIncidentOutput { incidentRecordArn: string | undefined; } export interface TagResourceRequest { resourceArn: string | undefined; tags: Record | undefined; } export interface TagResourceResponse {} export interface UntagResourceRequest { resourceArn: string | undefined; tagKeys: string[] | undefined; } export interface UntagResourceResponse {} export interface UpdateDeletionProtectionInput { arn: string | undefined; deletionProtected: boolean | undefined; clientToken?: string | undefined; } export interface UpdateDeletionProtectionOutput {} export interface UpdateIncidentRecordInput { clientToken?: string | undefined; arn: string | undefined; title?: string | undefined; summary?: string | undefined; impact?: number | undefined; status?: IncidentRecordStatus | undefined; chatChannel?: ChatChannel | undefined; notificationTargets?: NotificationTargetItem[] | undefined; } export interface UpdateIncidentRecordOutput {} export interface UpdateRelatedItemsInput { clientToken?: string | undefined; incidentRecordArn: string | undefined; relatedItemsUpdate: RelatedItemsUpdate | undefined; } export interface UpdateRelatedItemsOutput {} export type UpdateReplicationSetAction = | UpdateReplicationSetAction.AddRegionActionMember | UpdateReplicationSetAction.DeleteRegionActionMember | UpdateReplicationSetAction.$UnknownMember; export declare namespace UpdateReplicationSetAction { interface AddRegionActionMember { addRegionAction: AddRegionAction; deleteRegionAction?: never; $unknown?: never; } interface DeleteRegionActionMember { addRegionAction?: never; deleteRegionAction: DeleteRegionAction; $unknown?: never; } interface $UnknownMember { addRegionAction?: never; deleteRegionAction?: never; $unknown: [string, any]; } interface Visitor { addRegionAction: (value: AddRegionAction) => T; deleteRegionAction: (value: DeleteRegionAction) => T; _: (name: string, value: any) => T; } } export interface UpdateReplicationSetInput { arn: string | undefined; actions: UpdateReplicationSetAction[] | undefined; clientToken?: string | undefined; } export interface UpdateReplicationSetOutput {} export interface UpdateResponsePlanInput { clientToken?: string | undefined; arn: string | undefined; displayName?: string | undefined; incidentTemplateTitle?: string | undefined; incidentTemplateImpact?: number | undefined; incidentTemplateSummary?: string | undefined; incidentTemplateDedupeString?: string | undefined; incidentTemplateNotificationTargets?: NotificationTargetItem[] | undefined; chatChannel?: ChatChannel | undefined; engagements?: string[] | undefined; actions?: Action[] | undefined; incidentTemplateTags?: Record | undefined; integrations?: Integration[] | undefined; } export interface UpdateResponsePlanOutput {} export interface UpdateTimelineEventInput { clientToken?: string | undefined; incidentRecordArn: string | undefined; eventId: string | undefined; eventTime?: Date | undefined; eventType?: string | undefined; eventData?: string | undefined; eventReferences?: EventReference[] | undefined; } export interface UpdateTimelineEventOutput {}