import * as react_jsx_runtime from 'react/jsx-runtime';
import { ReactNode } from 'react';
import { TablerIcon } from '@tabler/icons-react';

type NotePriority = 'low' | 'normal' | 'high' | 'urgent';
interface UserNote {
    id: string;
    userId: string;
    organizationId: string | null;
    title: string | null;
    content: string;
    priority: NotePriority;
    pinned: boolean;
    createdBy: string;
    source: string | null;
    metadata: Record<string, unknown>;
    createdAt: string;
    updatedAt: string;
    visibility: 'private' | 'org';
    creatorName: string | null;
}

declare const PRIORITY_BORDER_COLOR: Record<NotePriority, string>;
interface ScopeChipProps {
    visibility: 'private' | 'org';
    onToggle: () => void;
    disabled?: boolean;
    disabledTooltip?: string;
}
declare function ScopeChip({ visibility, onToggle, disabled, disabledTooltip }: ScopeChipProps): react_jsx_runtime.JSX.Element;
interface EditNoteFormProps {
    note: UserNote;
    onClose: () => void;
    currentUserId: string | null;
}
declare function EditNoteForm({ note, onClose, currentUserId }: EditNoteFormProps): react_jsx_runtime.JSX.Element;
interface CreateNoteFormProps {
    onClose: () => void;
}
declare function CreateNoteForm({ onClose }: CreateNoteFormProps): react_jsx_runtime.JSX.Element;
declare function NotesPanelView(): react_jsx_runtime.JSX.Element;

interface NotesPanelViewShellProps {
    title: string;
    icon: TablerIcon;
    children: ReactNode;
    headerRightContent?: ReactNode;
}
/**
 * Lightweight panel shell for NotesPanelView.
 * Uses Mantine-native inline styles — no CSS modules required —
 * so it works in the shared @repo/ui package without host-local assets.
 */
declare function NotesPanelViewShell({ title, icon: Icon, children, headerRightContent }: NotesPanelViewShellProps): react_jsx_runtime.JSX.Element;

interface PriorityNotesCardProps {
    /**
     * Called when the user clicks a priority note row.
     * Consumers supply navigation to the Notes panel view;
     * this component has no dependency on any app-local store.
     *
     * @example CC usage:
     * ```tsx
     * <PriorityNotesCard onNavigateToNotes={() => setRightPanelActiveView('notes')} />
     * ```
     */
    onNavigateToNotes: () => void;
}
declare function PriorityNotesCard({ onNavigateToNotes }: PriorityNotesCardProps): react_jsx_runtime.JSX.Element | null;

export { CreateNoteForm, EditNoteForm, NotesPanelView, NotesPanelViewShell, PRIORITY_BORDER_COLOR, PriorityNotesCard, ScopeChip };
export type { PriorityNotesCardProps };
