export interface CopySourceImageSetInformation {
    /** The latest version identifier for the source image set. */
    latestVersionId: string;
    /** Contains MetadataCopies structure and wraps information related to specific copy use cases. For example, when copying subsets. */
    DICOMCopies?: any;
}
export interface CopyDestinationImageSet {
    /** The image set identifier for the destination image set. */
    imageSetId: string;
    /** The latest version identifier for the destination image set. */
    latestVersionId: string;
}
export interface CopyImageSetInformation {
    /** The source image set. */
    sourceImageSet: CopySourceImageSetInformation;
    /** The destination image set. */
    destinationImageSet?: CopyDestinationImageSet;
}
export interface ImageFrameInformation {
    /** The image frame (pixel data) identifier. */
    imageFrameId: string;
}
export interface Sort {
    /** The sort order for search criteria. */
    sortOrder: 'ASC' | 'DESC';
    /** The sort field for search criteria. */
    sortField: 'updatedAt' | 'createdAt' | 'DICOMStudyDateAndTime';
}
export interface SearchCriteria {
    /** The filters for the search criteria. */
    filters?: any[];
    /** The sort input for search criteria. */
    sort?: Sort;
}
export interface DICOMUpdates {
    /** The DICOM tags to be removed from ImageSetMetadata. */
    removableAttributes?: string;
    /** The DICOM tags that need to be updated in ImageSetMetadata. */
    updatableAttributes?: string;
}
export interface CopyImageSetInput {
    /** Copy image set information. */
    copyImageSetInformation: CopyImageSetInformation;
    /** The data store identifier. */
    datastoreId: string;
    /** The source image set identifier. */
    sourceImageSetId: string;
    /** Providing this parameter will force completion of the CopyImageSet operation, even if there are inconsistent Patient, Study, and/or Series level metadata elements between the sourceImageSet and destin */
    force?: boolean;
    /** Providing this parameter will configure the CopyImageSet operation to promote the given image set to the primary DICOM hierarchy. If successful, a new primary image set ID will be returned as the dest */
    promoteToPrimary?: boolean;
}
export interface CreateDatastoreInput {
    /** A unique identifier for API idempotency. */
    clientToken: string;
    /** The data store name. */
    datastoreName?: string;
    /** The Amazon Resource Name (ARN) assigned to the Key Management Service (KMS) key for accessing encrypted data. */
    kmsKeyArn?: string;
    /** The ARN of the authorizer's Lambda function. */
    lambdaAuthorizerArn?: string;
    /** The lossless storage format for the datastore. */
    losslessStorageFormat?: 'HTJ2K' | 'JPEG_2000_LOSSLESS';
    /** The tags provided when creating a data store. */
    tags?: Record<string, string>;
}
export interface DeleteDatastoreInput {
    /** The data store identifier. */
    datastoreId: string;
}
export interface DeleteImageSetInput {
    /** The data store identifier. */
    datastoreId: string;
    /** The image set identifier. */
    imageSetId: string;
}
export interface GetDatastoreInput {
    /** The data store identifier. */
    datastoreId: string;
}
export interface GetDICOMImportJobInput {
    /** The data store identifier. */
    datastoreId: string;
    /** The import job identifier. */
    jobId: string;
}
export interface GetImageFrameInput {
    /** The data store identifier. */
    datastoreId: string;
    /** Information about the image frame (pixel data) identifier. */
    imageFrameInformation: ImageFrameInformation;
    /** The image set identifier. */
    imageSetId: string;
}
export interface GetImageSetInput {
    /** The data store identifier. */
    datastoreId: string;
    /** The image set identifier. */
    imageSetId: string;
    /** The image set version identifier. */
    versionId?: string;
}
export interface GetImageSetMetadataInput {
    /** The data store identifier. */
    datastoreId: string;
    /** The image set identifier. */
    imageSetId: string;
    /** The image set version identifier. */
    versionId?: string;
}
export interface ListDatastoresInput {
    /** The data store status. */
    datastoreStatus?: 'CREATING' | 'CREATE_FAILED' | 'ACTIVE' | 'DELETING' | 'DELETED';
    /** Valid Range: Minimum value of 1. Maximum value of 50. */
    maxResults?: number;
    /** The pagination token used to request the list of data stores on the next page. */
    nextToken?: string;
}
export interface ListDICOMImportJobsInput {
    /** The data store identifier. */
    datastoreId: string;
    /** The filters for listing import jobs based on status. */
    jobStatus?: 'SUBMITTED' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED';
    /** The max results count. The upper bound is determined by load testing. */
    maxResults?: number;
    /** The pagination token used to request the list of import jobs on the next page. */
    nextToken?: string;
}
export interface ListImageSetVersionsInput {
    /** The data store identifier. */
    datastoreId: string;
    /** The image set identifier. */
    imageSetId: string;
    /** The max results count. */
    maxResults?: number;
    /** The pagination token used to request the list of image set versions on the next page. */
    nextToken?: string;
}
export interface ListTagsForResourceInput {
    /** The Amazon Resource Name (ARN) of the medical imaging resource to list tags for. */
    resourceArn: string;
}
export interface SearchImageSetsInput {
    /** The identifier of the data store where the image sets reside. */
    datastoreId: string;
    /** The maximum number of results that can be returned in a search. */
    maxResults?: number;
    /** The token used for pagination of results returned in the response. Use the token returned from the previous request to continue results where the previous request ended. */
    nextToken?: string;
    /** The search criteria that filters by applying a maximum of 1 item to SearchByAttribute. */
    searchCriteria?: SearchCriteria;
}
export interface StartDICOMImportJobInput {
    /** A unique identifier for API idempotency. */
    clientToken: string;
    /** The Amazon Resource Name (ARN) of the IAM role that grants permission to access medical imaging resources. */
    dataAccessRoleArn: string;
    /** The data store identifier. */
    datastoreId: string;
    /** The input prefix path for the S3 bucket that contains the DICOM files to be imported. */
    inputS3Uri: string;
    /** The output prefix of the S3 bucket to upload the results of the DICOM import job. */
    outputS3Uri: string;
    /** The account ID of the source S3 bucket owner. */
    inputOwnerAccountId?: string;
    /** The import job name. */
    jobName?: string;
}
export interface TagResourceInput {
    /** The Amazon Resource Name (ARN) of the medical imaging resource that tags are being added to. */
    resourceArn: string;
    /** The user-specified key and value tag pairs added to a medical imaging resource. */
    tags: Record<string, string>;
}
export interface UntagResourceInput {
    /** The Amazon Resource Name (ARN) of the medical imaging resource that tags are being removed from. */
    resourceArn: string;
    /** The keys for the tags to be removed from the medical imaging resource. */
    tagKeys: string[];
}
export interface UpdateImageSetMetadataInput {
    /** The data store identifier. */
    datastoreId: string;
    /** The image set identifier. */
    imageSetId: string;
    /** The latest image set version identifier. */
    latestVersionId: string;
    /** Update image set metadata updates. */
    updateImageSetMetadataUpdates: {
        DICOMUpdates?: DICOMUpdates;
    } | {
        revertToVersionId?: string;
    };
    /** Setting this flag will force the UpdateImageSetMetadata operation for the following attributes: Tag.StudyInstanceUID, Tag.SeriesInstanceUID, Tag.SOPInstanceUID, and Tag.StudyID Adding, removing, or up */
    force?: boolean;
}
/** Medical Imaging service binding for Step Functions SDK integrations. */
export declare class MedicalImaging {
    constructor();
    copyImageSet<T>(params: CopyImageSetInput): Promise<T>;
    createDatastore<T>(params: CreateDatastoreInput): Promise<T>;
    deleteDatastore<T>(params: DeleteDatastoreInput): Promise<T>;
    deleteImageSet<T>(params: DeleteImageSetInput): Promise<T>;
    getDatastore<T>(params: GetDatastoreInput): Promise<T>;
    getDICOMImportJob<T>(params: GetDICOMImportJobInput): Promise<T>;
    getImageFrame<T>(params: GetImageFrameInput): Promise<T>;
    getImageSet<T>(params: GetImageSetInput): Promise<T>;
    getImageSetMetadata<T>(params: GetImageSetMetadataInput): Promise<T>;
    listDatastores<T>(params: ListDatastoresInput): Promise<T>;
    listDICOMImportJobs<T>(params: ListDICOMImportJobsInput): Promise<T>;
    listImageSetVersions<T>(params: ListImageSetVersionsInput): Promise<T>;
    listTagsForResource<T>(params: ListTagsForResourceInput): Promise<T>;
    searchImageSets<T>(params: SearchImageSetsInput): Promise<T>;
    startDICOMImportJob<T>(params: StartDICOMImportJobInput): Promise<T>;
    tagResource<T>(params: TagResourceInput): Promise<T>;
    untagResource<T>(params: UntagResourceInput): Promise<T>;
    updateImageSetMetadata<T>(params: UpdateImageSetMetadataInput): Promise<T>;
}
//# sourceMappingURL=MedicalImaging.d.ts.map