import React, { PropsWithChildren, ReactNode } from 'react'; import type { ATTACHMENT_GROUPS_ORDER } from './Attachment'; import type { Attachment } from 'stream-chat'; import type { AttachmentProps } from './Attachment'; import type { DefaultStreamChatGenerics } from '../../types/types'; export declare const SUPPORTED_VIDEO_FORMATS: string[]; export declare type AttachmentComponentType = typeof ATTACHMENT_GROUPS_ORDER[number]; export declare type GroupedRenderedAttachment = Record; export declare type GalleryAttachment = { images: Attachment[]; type: 'gallery'; }; export declare type AttachmentContainerProps = { attachment: Attachment | GalleryAttachment; componentType: AttachmentComponentType; }; export declare type RenderAttachmentProps = Omit, 'attachments'> & { attachment: Attachment; }; export declare type RenderGalleryProps = Omit, 'attachments'> & { attachment: GalleryAttachment; }; export declare const isScrapedContent: (attachment: Attachment) => string | undefined; export declare const isUploadedImage: (attachment: Attachment) => boolean; export declare const isGalleryAttachmentType: (output: Attachment | GalleryAttachment) => output is GalleryAttachment; export declare const isAudioAttachment: (attachment: Attachment) => boolean; export declare const isFileAttachment: (attachment: Attachment) => boolean | "" | undefined; export declare const isMediaAttachment: (attachment: Attachment) => boolean; export declare const isSvgAttachment: (attachment: Attachment) => boolean; /** * @deprecated will be removed in the next major release, * replaced with the proper component equivalent `AttachmentContainer/AttachmentWithinContainer` */ export declare const renderAttachmentWithinContainer: (props: React.PropsWithChildren>) => JSX.Element; /** * @deprecated will be removed in the next major release, * replaced with the proper component equivalent `AttachmentContainer/AttachmentActionsContainer` */ export declare const renderAttachmentActions: (props: RenderAttachmentProps) => JSX.Element | null; /** * @deprecated will be removed in the next major release, * replaced with the proper component equivalent `AttachmentContainer/GalleryContainer` */ export declare const renderGallery: (props: RenderGalleryProps) => JSX.Element; /** * @deprecated will be removed in the next major release, * replaced with the proper component equivalent `AttachmentContainer/ImageContainer` */ export declare const renderImage: (props: RenderAttachmentProps) => JSX.Element; /** * @deprecated will be removed in the next major release, * replaced with the proper component equivalent `AttachmentContainer/CardContainer` */ export declare const renderCard: (props: RenderAttachmentProps) => JSX.Element; /** * @deprecated will be removed in the next major release, * replaced with the proper component equivalent `AttachmentContainer/FileContainer` */ export declare const renderFile: (props: RenderAttachmentProps) => JSX.Element | null; /** * @deprecated will be removed in the next major release, * replaced with the proper component equivalent `AttachmentContainer/AudioContainer` */ export declare const renderAudio: (props: RenderAttachmentProps) => JSX.Element; /** * @deprecated will be removed in the next major release, * replaced with the proper component equivalent `AttachmentContainer/MediaContainer` */ export declare const renderMedia: (props: RenderAttachmentProps) => JSX.Element; //# sourceMappingURL=utils.d.ts.map