import { Dispatch, ReactElement, ReactNode, SetStateAction } from 'react'; import { SuggestedCollaborator, UserContactType } from '@box/user-selector'; import { CollaborationRole, Collaborator, Configuration, ContactService, EventService, Item, SharedLink, SharingService, User, VariantType, ViewType } from '../types'; export interface UnifiedShareModalContextValue { collaborationAccess?: ReactElement; collaborationNotices?: ReactElement | ReactElement[]; collaborationRoles: CollaborationRole[]; collaborator: Collaborator | null; collaborators: Collaborator[]; config: Configuration; contactService: ContactService; currentUser: Partial; eventService: EventService; initialContacts: UserContactType[]; invitationFormNotices?: ReactElement | ReactElement[]; isFetching: boolean; isOpen: boolean; isSubmitting: boolean; item: Item; onOpenChange: (open: boolean) => void; setCollaborator: Dispatch>; setIsLoading: Dispatch>; setView: Dispatch>; sharedLink: Partial; sharedLinkNotices?: ReactElement | ReactElement[]; sharingService: SharingService; suggestedCollaborators?: SuggestedCollaborator[]; variant: VariantType; view: ViewType; } export declare const UnifiedShareModalContext: import('react').Context; export declare const useUnifiedShareModalContext: () => UnifiedShareModalContextValue; export interface UnifiedShareModalProviderProps { children: ReactNode; collaborationAccess?: ReactElement; collaborationNotices?: ReactElement | ReactElement[]; collaborationRoles?: CollaborationRole[]; collaborators?: Collaborator[]; config?: Configuration; contactService?: ContactService; currentUser?: User; eventService?: EventService; initialContacts?: UserContactType[]; invitationFormNotices?: ReactElement | ReactElement[]; isFetching: boolean; isOpen: boolean; isSubmitting?: boolean; item: Item; onOpenChange: (open: boolean) => void; sharedLink?: SharedLink; sharedLinkNotices?: ReactElement | ReactElement[]; sharingService?: SharingService; suggestedCollaborators?: SuggestedCollaborator[]; variant: VariantType; } export declare const UnifiedShareModalProvider: ({ children, collaborationAccess, collaborationNotices, collaborationRoles, collaborators, config, contactService, currentUser, eventService, initialContacts, invitationFormNotices, isFetching, isOpen, isSubmitting, item, onOpenChange, sharedLink, sharedLinkNotices, sharingService, suggestedCollaborators, variant, }: UnifiedShareModalProviderProps) => import("react/jsx-runtime").JSX.Element;