import { ExportJobStatus, LongConditionOperator, ResourceType, SearchJobState, StringConditionOperator, TimeConditionOperator, } from "./enums"; export interface BackupCreationTimeFilter { CreatedAfter?: Date | undefined; CreatedBefore?: Date | undefined; } export interface ListSearchJobBackupsInput { SearchJobIdentifier: string | undefined; NextToken?: string | undefined; MaxResults?: number | undefined; } export interface SearchJobBackupsResult { Status?: SearchJobState | undefined; StatusMessage?: string | undefined; ResourceType?: ResourceType | undefined; BackupResourceArn?: string | undefined; SourceResourceArn?: string | undefined; IndexCreationTime?: Date | undefined; BackupCreationTime?: Date | undefined; } export interface ListSearchJobBackupsOutput { Results: SearchJobBackupsResult[] | undefined; NextToken?: string | undefined; } export interface ListSearchJobResultsInput { SearchJobIdentifier: string | undefined; NextToken?: string | undefined; MaxResults?: number | undefined; } export interface EBSResultItem { BackupResourceArn?: string | undefined; SourceResourceArn?: string | undefined; BackupVaultName?: string | undefined; FileSystemIdentifier?: string | undefined; FilePath?: string | undefined; FileSize?: number | undefined; CreationTime?: Date | undefined; LastModifiedTime?: Date | undefined; } export interface S3ResultItem { BackupResourceArn?: string | undefined; SourceResourceArn?: string | undefined; BackupVaultName?: string | undefined; ObjectKey?: string | undefined; ObjectSize?: number | undefined; CreationTime?: Date | undefined; ETag?: string | undefined; VersionId?: string | undefined; } export type ResultItem = | ResultItem.EBSResultItemMember | ResultItem.S3ResultItemMember | ResultItem.$UnknownMember; export declare namespace ResultItem { interface S3ResultItemMember { S3ResultItem: S3ResultItem; EBSResultItem?: never; $unknown?: never; } interface EBSResultItemMember { S3ResultItem?: never; EBSResultItem: EBSResultItem; $unknown?: never; } interface $UnknownMember { S3ResultItem?: never; EBSResultItem?: never; $unknown: [string, any]; } interface Visitor { S3ResultItem: (value: S3ResultItem) => T; EBSResultItem: (value: EBSResultItem) => T; _: (name: string, value: any) => T; } } export interface ListSearchJobResultsOutput { Results: ResultItem[] | undefined; NextToken?: string | undefined; } export interface ListTagsForResourceRequest { ResourceArn: string | undefined; } export interface ListTagsForResourceResponse { Tags?: Record | undefined; } export interface CurrentSearchProgress { RecoveryPointsScannedCount?: number | undefined; ItemsScannedCount?: number | undefined; ItemsMatchedCount?: number | undefined; } export interface GetSearchJobInput { SearchJobIdentifier: string | undefined; } export interface TimeCondition { Value: Date | undefined; Operator?: TimeConditionOperator | undefined; } export interface StringCondition { Value: string | undefined; Operator?: StringConditionOperator | undefined; } export interface LongCondition { Value: number | undefined; Operator?: LongConditionOperator | undefined; } export interface EBSItemFilter { FilePaths?: StringCondition[] | undefined; Sizes?: LongCondition[] | undefined; CreationTimes?: TimeCondition[] | undefined; LastModificationTimes?: TimeCondition[] | undefined; } export interface S3ItemFilter { ObjectKeys?: StringCondition[] | undefined; Sizes?: LongCondition[] | undefined; CreationTimes?: TimeCondition[] | undefined; VersionIds?: StringCondition[] | undefined; ETags?: StringCondition[] | undefined; } export interface ItemFilters { S3ItemFilters?: S3ItemFilter[] | undefined; EBSItemFilters?: EBSItemFilter[] | undefined; } export interface SearchScope { BackupResourceTypes: ResourceType[] | undefined; BackupResourceCreationTime?: BackupCreationTimeFilter | undefined; SourceResourceArns?: string[] | undefined; BackupResourceArns?: string[] | undefined; BackupResourceTags?: Record | undefined; } export interface SearchScopeSummary { TotalRecoveryPointsToScanCount?: number | undefined; TotalItemsToScanCount?: number | undefined; } export interface GetSearchJobOutput { Name?: string | undefined; SearchScopeSummary?: SearchScopeSummary | undefined; CurrentSearchProgress?: CurrentSearchProgress | undefined; StatusMessage?: string | undefined; EncryptionKeyArn?: string | undefined; CompletionTime?: Date | undefined; Status: SearchJobState | undefined; SearchScope: SearchScope | undefined; ItemFilters: ItemFilters | undefined; CreationTime: Date | undefined; SearchJobIdentifier: string | undefined; SearchJobArn: string | undefined; } export interface ListSearchJobsInput { ByStatus?: SearchJobState | undefined; NextToken?: string | undefined; MaxResults?: number | undefined; } export interface SearchJobSummary { SearchJobIdentifier?: string | undefined; SearchJobArn?: string | undefined; Name?: string | undefined; Status?: SearchJobState | undefined; CreationTime?: Date | undefined; CompletionTime?: Date | undefined; SearchScopeSummary?: SearchScopeSummary | undefined; StatusMessage?: string | undefined; } export interface ListSearchJobsOutput { SearchJobs: SearchJobSummary[] | undefined; NextToken?: string | undefined; } export interface StartSearchJobInput { Tags?: Record | undefined; Name?: string | undefined; EncryptionKeyArn?: string | undefined; ClientToken?: string | undefined; SearchScope: SearchScope | undefined; ItemFilters?: ItemFilters | undefined; } export interface StartSearchJobOutput { SearchJobArn?: string | undefined; CreationTime?: Date | undefined; SearchJobIdentifier?: string | undefined; } export interface StopSearchJobInput { SearchJobIdentifier: string | undefined; } export interface StopSearchJobOutput {} export interface S3ExportSpecification { DestinationBucket: string | undefined; DestinationPrefix?: string | undefined; } export type ExportSpecification = | ExportSpecification.S3ExportSpecificationMember | ExportSpecification.$UnknownMember; export declare namespace ExportSpecification { interface S3ExportSpecificationMember { s3ExportSpecification: S3ExportSpecification; $unknown?: never; } interface $UnknownMember { s3ExportSpecification?: never; $unknown: [string, any]; } interface Visitor { s3ExportSpecification: (value: S3ExportSpecification) => T; _: (name: string, value: any) => T; } } export interface GetSearchResultExportJobInput { ExportJobIdentifier: string | undefined; } export interface GetSearchResultExportJobOutput { ExportJobIdentifier: string | undefined; ExportJobArn?: string | undefined; Status?: ExportJobStatus | undefined; CreationTime?: Date | undefined; CompletionTime?: Date | undefined; StatusMessage?: string | undefined; ExportSpecification?: ExportSpecification | undefined; SearchJobArn?: string | undefined; } export interface ListSearchResultExportJobsInput { Status?: ExportJobStatus | undefined; SearchJobIdentifier?: string | undefined; NextToken?: string | undefined; MaxResults?: number | undefined; } export interface ExportJobSummary { ExportJobIdentifier: string | undefined; ExportJobArn?: string | undefined; Status?: ExportJobStatus | undefined; CreationTime?: Date | undefined; CompletionTime?: Date | undefined; StatusMessage?: string | undefined; SearchJobArn?: string | undefined; } export interface ListSearchResultExportJobsOutput { ExportJobs: ExportJobSummary[] | undefined; NextToken?: string | undefined; } export interface StartSearchResultExportJobInput { SearchJobIdentifier: string | undefined; ExportSpecification: ExportSpecification | undefined; ClientToken?: string | undefined; Tags?: Record | undefined; RoleArn?: string | undefined; } export interface StartSearchResultExportJobOutput { ExportJobArn?: string | undefined; ExportJobIdentifier: 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 {}