import { AddAttachmentRequest, AddAttachmentResponse, AddCommentAnnotationEvent, AddCommentAnnotationRequest, AddCommentEvent, AddCommentRequest, AddReactionEvent, AddReactionRequest, ApproveCommentAnnotationEvent, ApproveCommentAnnotationRequest, AssignUserEvent, AssignUserRequest, Attachment, CommentEventTypesMap, CommentRequestQuery, CopyLinkEvent, CopyLinkRequest, DeleteAttachmentEvent, DeleteAttachmentRequest, DeleteCommentAnnotationEvent, DeleteCommentAnnotationRequest, DeleteCommentEvent, DeleteCommentRequest, DeleteReactionEvent, DeleteReactionRequest, DeleteRecordingEvent, DeleteRecordingRequest, GetAttachmentRequest, GetCommentAnnotationsCountResponse, GetCommentAnnotationsResponse, GetCommentRequest, GetLinkRequest, GetLinkResponse, GetRecordingRequest, RecordedData, RejectCommentAnnotationEvent, RejectCommentAnnotationRequest, ResolveCommentAnnotationRequest, SubscribeCommentAnnotationEvent, SubscribeCommentAnnotationRequest, ToggleReactionEvent, ToggleReactionRequest, UnsubscribeCommentAnnotationEvent, UnsubscribeCommentAnnotationRequest, UpdateAccessEvent, UpdateAccessRequest, UpdateCommentEvent, UpdateCommentRequest, UpdatePriorityEvent, UpdatePriorityRequest, UpdateStatusEvent, UpdateStatusRequest } from "@veltdev/types";
export declare function useAddCommentAnnotation(): {
    addCommentAnnotation: (request: AddCommentAnnotationRequest) => Promise<AddCommentAnnotationEvent | null>;
};
export declare function useApproveCommentAnnotation(): {
    approveCommentAnnotation: (request: ApproveCommentAnnotationRequest) => Promise<ApproveCommentAnnotationEvent | null>;
};
export declare function useRejectCommentAnnotation(): {
    rejectCommentAnnotation: (request: RejectCommentAnnotationRequest) => Promise<RejectCommentAnnotationEvent | null>;
};
export declare function useSubscribeCommentAnnotation(): {
    subscribeCommentAnnotation: (request: SubscribeCommentAnnotationRequest) => Promise<SubscribeCommentAnnotationEvent | null>;
};
export declare function useUnsubscribeCommentAnnotation(): {
    unsubscribeCommentAnnotation: (request: UnsubscribeCommentAnnotationRequest) => Promise<UnsubscribeCommentAnnotationEvent | null>;
};
export declare function useDeleteCommentAnnotation(): {
    deleteCommentAnnotation: (request: DeleteCommentAnnotationRequest) => Promise<DeleteCommentAnnotationEvent | null>;
};
export declare function useGetCommentAnnotations(query?: CommentRequestQuery): GetCommentAnnotationsResponse;
export declare function useCommentAnnotationsCount(query?: CommentRequestQuery): GetCommentAnnotationsCountResponse;
export declare function useAssignUser(): {
    assignUser: (request: AssignUserRequest) => Promise<AssignUserEvent | null>;
};
export declare function useUpdatePriority(): {
    updatePriority: (request: UpdatePriorityRequest) => Promise<UpdatePriorityEvent | null>;
};
export declare function useUpdateStatus(): {
    updateStatus: (request: UpdateStatusRequest) => Promise<UpdateStatusEvent | null>;
};
export declare function useUpdateAccess(): {
    updateAccess: (request: UpdateAccessRequest) => Promise<UpdateAccessEvent | null>;
};
export declare function useResolveCommentAnnotation(): {
    resolveCommentAnnotation: (request: ResolveCommentAnnotationRequest) => Promise<ResolveCommentAnnotationRequest | null>;
};
export declare function useGetLink(): {
    getLink: (request: GetLinkRequest) => Promise<GetLinkResponse | null>;
};
export declare function useCopyLink(): {
    copyLink: (request: CopyLinkRequest) => Promise<CopyLinkEvent | null>;
};
export declare function useAddComment(): {
    addComment: (request: AddCommentRequest) => Promise<AddCommentEvent | null>;
};
export declare function useUpdateComment(): {
    updateComment: (request: UpdateCommentRequest) => Promise<UpdateCommentEvent | null>;
};
export declare function useDeleteComment(): {
    deleteComment: (request: DeleteCommentRequest) => Promise<DeleteCommentEvent | null>;
};
export declare function useGetComment(): {
    getComment: (request: GetCommentRequest) => Promise<Comment[]>;
};
export declare function useAddAttachment(): {
    addAttachment: (request: AddAttachmentRequest) => Promise<AddAttachmentResponse[] | null>;
};
export declare function useDeleteAttachment(): {
    deleteAttachment: (request: DeleteAttachmentRequest) => Promise<DeleteAttachmentEvent | null>;
};
export declare function useGetAttachment(): {
    getAttachment: (request: GetAttachmentRequest) => Promise<Attachment[] | null>;
};
export declare function useDeleteRecording(): {
    deleteRecording: (request: DeleteRecordingRequest) => Promise<DeleteRecordingEvent | null>;
};
export declare function useGetRecording(): {
    getRecording: (request: GetRecordingRequest) => Promise<RecordedData[] | null>;
};
export declare function useAddReaction(): {
    addReaction: (request: AddReactionRequest) => Promise<AddReactionEvent | null>;
};
export declare function useDeleteReaction(): {
    deleteReaction: (request: DeleteReactionRequest) => Promise<DeleteReactionEvent | null>;
};
export declare function useToggleReaction(): {
    toggleReaction: (request: ToggleReactionRequest) => Promise<ToggleReactionEvent | null>;
};
/**
 * @deprecated Use useCommentEventCallback hook instead.
 */
export declare function useCommentActionCallback<T extends keyof CommentEventTypesMap>(action: T): CommentEventTypesMap[T];
export declare function useCommentEventCallback<T extends keyof CommentEventTypesMap>(action: T): CommentEventTypesMap[T];
