UNPKG

analytica-frontend-lib

Version:

Repositório público dos componentes utilizados nas plataformas da Analytica Ensino

27 lines 1.44 kB
import type { BaseApiClient } from '../types/api'; import type { SimulationsStudentsPage, SimulationsStudentsFilters, SimulationsListData, SimulationsListFilters, SimulationDetailData, NoteData } from '../types/simulations'; /** * Hook return type for the teacher-facing Simulations feature. * * The hook exposes imperative fetchers (rather than holding everything in * state) because the UI loads data lazily across three nested levels: * students list -> a student's simulations -> a simulation's questions. */ export interface UseSimulationsReturn { fetchStudents: (filters?: SimulationsStudentsFilters) => Promise<SimulationsStudentsPage>; fetchStudentSimulations: (userInstitutionId: string, filters?: SimulationsListFilters) => Promise<SimulationsListData>; fetchSimulationDetail: (userInstitutionId: string, simulationId: string) => Promise<SimulationDetailData>; fetchNote: (userInstitutionId: string, simulationId: string) => Promise<NoteData | null>; saveNote: (userInstitutionId: string, simulationId: string, note: string) => Promise<NoteData | null>; } /** * Factory that binds an API client to the Simulations hook. * * @example * ```tsx * const useSimulations = createUseSimulations(api); * const { fetchStudents } = useSimulations(); * ``` */ export declare const createUseSimulations: (apiClient: BaseApiClient) => () => UseSimulationsReturn; //# sourceMappingURL=useSimulations.d.ts.map