/** * Enrollments Resource * * Simplified, course-centric enrollment management. */ import type { EnrollOptions, ListEnrollmentsParams } from '@timeback/types/zod'; import type { DefaultClass, EdubridgeTransportLike, Enrollment, ResetGoalsResult } from '../types'; /** * Enrollments resource for course-centric enrollment management. * * Provides simplified methods to enroll/unenroll users in courses * without needing to understand the underlying OneRoster academic hierarchy. */ export declare class EnrollmentsResource { private readonly transport; constructor(transport: EdubridgeTransportLike); /** * List enrollments with filtering. * * @param params - Query parameters including userId filter * @returns List of course enrollments */ list(params: ListEnrollmentsParams): Promise; /** * Enroll a user in a course. * * Automatically handles creating the appropriate class and academic session * records required by OneRoster. * * @param userId - User ID to enroll * @param courseId - Course ID to enroll in * @param schoolId - Optional school ID (uses user's primary org if not specified) * @param options - Enrollment options (role, metadata, etc.) * @returns Created enrollment */ enroll(userId: string, courseId: string, schoolId?: string, options?: EnrollOptions): Promise; /** * Unenroll a user from a course. * * Marks the enrollment as 'tobedeleted'. * * @param userId - User ID to unenroll * @param courseId - Course ID to unenroll from * @param schoolId - Optional school ID */ unenroll(userId: string, courseId: string, schoolId?: string): Promise; /** * Reset enrollment goals for all users in a course. * * @param courseId - Course ID to reset goals for * @returns Result with count of updated enrollments */ resetGoals(courseId: string): Promise; /** * Reset a user's progress in a course. * * Marks all assessment results for the user/course as 'tobedeleted'. * * @param userId - User ID * @param courseId - Course ID */ resetProgress(userId: string, courseId: string): Promise; /** * Get the default class for a course. * * @param courseId - Course ID * @param schoolId - Optional school ID * @returns Default class and term information */ getDefaultClass(courseId: string, schoolId?: string): Promise; } //# sourceMappingURL=enrollments.d.ts.map