ltijs
Version:
Easily turn your web application into a LTI 1.3 Learning Tool.
45 lines (44 loc) • 2.28 kB
TypeScript
import type { AccessTokenManager } from '#services/access-token-manager/access-token-manager.service';
import type { RequestHandler } from '#services/request-handler/request-handler.types';
import type { Logger } from '#services/logger/logger.types';
import type { LaunchContext } from '#services/launch/launch-context.service';
import type { GetLineItemsOptions, GetLineItemsResult, GetScoresOptions, GetScoresResult, LineItem, Score } from '#services/grading/grading.types';
export declare class Grading {
private readonly LOG_COMPONENT;
private readonly LINEITEM_CONTAINER_ACCEPT;
private readonly LINEITEM_MEDIA_TYPE;
private readonly RESULT_CONTAINER_ACCEPT;
private readonly SCORE_CONTENT_TYPE;
private readonly RESOURCE_LINK_ID_PARAM;
private readonly RESOURCE_ID_PARAM;
private readonly TAG_PARAM;
private readonly LIMIT_PARAM;
private readonly USER_ID_PARAM;
private readonly launchContext;
private readonly accessTokenManager;
private readonly requestHandler;
private readonly logger;
constructor(launchContext: LaunchContext, accessTokenManager: AccessTokenManager, requestHandler: RequestHandler, logger: Logger);
/** Whether this launch declared AGS support. Check before calling any other method on this service. */
isAvailable(): boolean;
getLineItems(options?: GetLineItemsOptions): Promise<GetLineItemsResult>;
createLineItem(lineItem: LineItem, options?: GetLineItemsOptions): Promise<LineItem>;
getLineItemById(lineItemId: string): Promise<LineItem>;
private fetchLineItemById;
updateLineItemById(lineItemId: string, lineItem: LineItem): Promise<LineItem>;
deleteLineItemById(lineItemId: string): Promise<boolean>;
submitScore(lineItemId: string, score: Score): Promise<Score>;
getScores(lineItemId: string, options?: GetScoresOptions): Promise<GetScoresResult>;
private fetchLineItemsPage;
private buildLineItemsQuery;
private buildScoresQuery;
private filterLineItems;
private filtersByIdOrLabel;
private buildPaginationLinks;
private ensureServiceAvailability;
private ensureLineItemsAvailable;
private resolveLineItemsEndpoint;
private appendPathSegment;
private resolveResourceLinkId;
}
export default Grading;