import * as React from "react";
import { type TicketAssigneeOption } from "./assignee-dropdown";
import { type TicketAttachment } from "./ticket-attachments-list";
import type { TicketNote } from "./ticket-note-card";
export type { TicketAssigneeOption };
export interface TicketInfoSectionProps {
    /** Organization name and image */
    organization?: {
        name: string;
        imageSrc?: string;
    };
    /** User name */
    user?: string;
    /** Device info */
    device?: {
        name: string;
        icon?: React.ReactNode;
        onClick?: () => void;
    };
    /** Status tag */
    status?: string;
    /** Expand button click handler */
    onExpand?: () => void;
    /** Whether the section is expanded */
    expanded?: boolean;
    /** Additional className */
    className?: string;
    /** Assigned person info with inline dropdown */
    assigned?: {
        currentAssignee?: {
            id: string;
            name: string;
            avatarSrc?: string;
        };
        options: TicketAssigneeOption[];
        isLoading?: boolean;
        isPending?: boolean;
        onAssign: (userId: string | null) => void;
    };
    /** Created date string */
    createdAt?: string;
    /** Ticket description — markdown/HTML content */
    description?: string;
    /** File attachments (view-only with download) */
    attachments?: TicketAttachment[];
    /** Tag labels */
    tags?: string[];
    /** Notes */
    notes?: TicketNote[];
    onAddNote?: (text: string) => void;
    onEditNote?: (id: string, text: string) => void;
    onDeleteNote?: (id: string) => void;
    /** Disables the note input while a note is being added */
    isAddingNote?: boolean;
}
export declare function TicketInfoSection({ organization, device, status, onExpand, expanded, className, assigned, createdAt, description, attachments, tags, notes, onAddNote, onEditNote, onDeleteNote, isAddingNote, }: TicketInfoSectionProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=ticket-info-section.d.ts.map