analytica-frontend-lib
Version:
Repositório público dos componentes utilizados nas plataformas da Analytica Ensino
51 lines • 1.67 kB
TypeScript
import type { ActivityCategory, TypeRoutes } from '../../TypeSelector/TypeSelector.types/index';
import type { ActivityModelTableItem } from '../../types/activitiesHistory';
import type { PaginationData } from '../../types/pagination';
/**
* User data type for filter options
*/
export interface UserData {
subTeacherTopicClasses?: Array<{
subject?: {
id: string;
name: string;
};
}>;
}
/**
* Props for UnifiedDraftModelPage component
*/
export interface UnifiedDraftModelPageProps {
/** Type of page: drafts or models */
type: 'drafts' | 'models';
/** Activity category: ATIVIDADE or PROVA */
activityCategory: ActivityCategory;
/** Data to display in table */
data: ActivityModelTableItem[];
/** Loading state */
loading: boolean;
/** Error message */
error: string | null;
/** Pagination data */
pagination: PaginationData;
/** Delete function */
onDelete: (id: string) => Promise<void> | Promise<boolean>;
/** Send function (optional) */
onSend?: (row: ActivityModelTableItem) => void;
/** Fetch function to call when params change */
onParamsChange: (params: {
page?: number;
limit?: number;
search?: string;
subjectId?: string;
}) => void;
/** User data for filter options (optional) */
userData?: UserData | null;
/** Image for empty state */
activityImage?: string;
/** Image for no search results */
noSearchImage?: string;
/** Routes configuration for both ATIVIDADE and PROVA */
routes: Record<ActivityCategory, TypeRoutes>;
}
//# sourceMappingURL=types.d.ts.map