import { Action, AttachmentUpload, AttachmentUploadActionType, ProgressAction, CompleteAction, FailedAction, RemoveAction, ClearAction } from '../file-sharing/AttachmentUpload';
/**
 * @private
 */
export interface ImageAction {
    messageId: string;
}
/**
 * @private
 */
interface ImageSetAction extends Action, ImageAction {
    type: AttachmentUploadActionType.Set;
    newUploads: AttachmentUpload[];
}
/**
 * @private
 */
interface ImageProgressAction extends ProgressAction, ImageAction {
}
/**
 * @private
 */
interface ImageCompleteAction extends CompleteAction, ImageAction {
}
/**
 * @private
 */
interface ImageFailedAction extends FailedAction, ImageAction {
}
/**
 * @private
 */
interface ImageRemoveAction extends RemoveAction, ImageAction {
}
/**
 * @private
 */
interface ImageClearAction extends ClearAction, ImageAction {
}
/**
 * @private
 */
export type ImageActions = ImageSetAction | ImageProgressAction | ImageCompleteAction | ImageFailedAction | ImageRemoveAction | ImageClearAction;
/**
 * @internal
 */
export declare const ImageUploadReducer: (state: Record<string, AttachmentUpload[]> | undefined, action: ImageActions) => Record<string, AttachmentUpload[]> | undefined;
export {};
//# sourceMappingURL=ImageUploadReducer.d.ts.map