import type { RecommendedClassModelTableItem, RecommendedClassModelFilters, RecommendedClassModelsApiResponse, RecommendedClassUserFilterData } from '../../../types/recommendedLessons';
import type { SubjectEnum } from '../../../enums/SubjectEnum';
/**
 * Props for the RecommendedClassDraftsTab component
 */
export interface RecommendedClassDraftsTabProps {
    /** Function to fetch recommendedClass drafts from API */
    fetchRecommendedClassDrafts: (filters?: RecommendedClassModelFilters) => Promise<RecommendedClassModelsApiResponse>;
    /** Function to delete a recommendedClass draft */
    deleteRecommendedClassDraft: (id: string) => Promise<void>;
    /** Callback when create draft button is clicked */
    onCreateDraft: () => void;
    /** Callback when send lesson button is clicked on a draft */
    onSendDraft?: (draft: RecommendedClassModelTableItem) => void;
    /** Callback when edit draft button is clicked */
    onEditDraft?: (draft: RecommendedClassModelTableItem) => void;
    /** Image for empty state */
    emptyStateImage?: string;
    /** Image for no search results */
    noSearchImage?: string;
    /** Function to map subject name to SubjectEnum */
    mapSubjectNameToEnum?: (subjectName: string) => SubjectEnum | null;
    /** User data for populating filter options */
    userFilterData?: RecommendedClassUserFilterData;
    /**
     * Map of subject IDs to names for drafts display.
     * IMPORTANT: This Map should be memoized with useMemo in the parent component
     * to avoid unnecessary re-fetches.
     */
    subjectsMap?: Map<string, string>;
}
/**
 * RecommendedClassDraftsTab component
 * Displays recommendedClass drafts with filters, pagination, and CRUD actions.
 * Uses the shared ModelsTabBase component for common functionality.
 */
export declare const RecommendedClassDraftsTab: ({ fetchRecommendedClassDrafts, deleteRecommendedClassDraft, onCreateDraft, onSendDraft, onEditDraft, emptyStateImage, noSearchImage, mapSubjectNameToEnum, userFilterData, subjectsMap, }: RecommendedClassDraftsTabProps) => import("react/jsx-runtime").JSX.Element;
export default RecommendedClassDraftsTab;
//# sourceMappingURL=DraftsTab.d.ts.map