import { StringKeyMap } from "./utilities"; import { BaseCMI } from "./cmi/common/base_cmi"; import { ErrorCode } from "./constants"; import { CommitObject, InternalSettings, LogLevel, ResultObject, Settings } from "./types"; import { IBaseAPI, ICMIDataService, IErrorHandlingService, IEventService, IHttpService, ILoggingService, IOfflineStorageService, ISerializationService, ScormEventCallback } from "./interfaces"; export default abstract class BaseAPI implements IBaseAPI { private _timeout?; protected readonly _error_codes: ErrorCode; private _settings; private readonly _httpService; private _eventService; private _serializationService; private readonly _errorHandlingService; private readonly _loggingService; private readonly _offlineStorageService?; private readonly _cmiValueAccessService; private _courseId; protected constructor(error_codes: ErrorCode, settings?: Settings, httpService?: IHttpService, eventService?: IEventService, serializationService?: ISerializationService, cmiDataService?: ICMIDataService, errorHandlingService?: IErrorHandlingService, loggingService?: ILoggingService, offlineStorageService?: IOfflineStorageService); abstract cmi: BaseCMI; startingData?: StringKeyMap; currentState: number; get lastErrorCode(): string; set lastErrorCode(errorCode: string); protected get eventService(): IEventService; protected get loggingService(): ILoggingService; abstract reset(settings?: Settings): void; commonReset(settings?: Settings): void; initialize(callbackName: string, initializeMessage?: string, terminationMessage?: string): string; abstract lmsInitialize(parameter?: string): string; abstract lmsFinish(parameter?: string): string; abstract lmsGetValue(CMIElement: string): string; abstract lmsSetValue(CMIElement: string, value: any): string; abstract lmsCommit(parameter?: string): string; abstract lmsGetLastError(): string; abstract lmsGetErrorString(CMIErrorCode: string | number): string; abstract lmsGetDiagnostic(CMIErrorCode: string | number): string; abstract validateCorrectResponse(_CMIElement: string, _value: any): void; abstract getChildElement(_CMIElement: string, _value: any, _foundFirstIndex: boolean): BaseCMI | null; abstract storeData(_calculateTotalTime: boolean): ResultObject; abstract renderCommitCMI(_terminateCommit: boolean, _includeTotalTime?: boolean): StringKeyMap | Array; abstract renderCommitObject(_terminateCommit: boolean, _includeTotalTime?: boolean): CommitObject; apiLog(functionName: string, logMessage: string, messageLevel: LogLevel, CMIElement?: string): void; get settings(): InternalSettings; set settings(settings: Settings); terminate(callbackName: string, checkTerminated: boolean): string; getValue(callbackName: string, checkTerminated: boolean, CMIElement: string): string; setValue(callbackName: string, commitCallback: string, checkTerminated: boolean, CMIElement: string, value: any): string; commit(callbackName: string, checkTerminated?: boolean): string; getLastError(callbackName: string): string; getErrorString(callbackName: string, CMIErrorCode: string | number): string; getDiagnostic(callbackName: string, CMIErrorCode: string | number): string; checkState(checkTerminated: boolean, beforeInitError: number, afterTermError: number): boolean; protected _checkForDuplicateId(CMIElement: string, value: string): boolean; getLmsErrorMessageDetails(_errorNumber: string | number, _detail?: boolean): string; getCMIValue(_CMIElement: string): string; setCMIValue(_CMIElement: string, _value: any): string; _commonSetCMIValue(methodName: string, scorm2004: boolean, CMIElement: string, value: any): string; _commonGetCMIValue(methodName: string, scorm2004: boolean, CMIElement: string): any; isInitialized(): boolean; isNotInitialized(): boolean; isTerminated(): boolean; on(listenerName: string, callback: ScormEventCallback): void; off(listenerName: string, callback: ScormEventCallback): void; clear(listenerName: string): void; processListeners(functionName: string, CMIElement?: string, value?: any): void; throwSCORMError(CMIElement: string | undefined, errorNumber: number | undefined, message?: string): void; clearSCORMError(success: string): void; loadFromFlattenedJSON(json: StringKeyMap, CMIElement?: string): void; getFlattenedCMI(): StringKeyMap; loadFromJSON(json: StringKeyMap, CMIElement?: string): void; renderCMIToJSONString(): string; renderCMIToJSONObject(): StringKeyMap; processHttpRequest(url: string, params: CommitObject | StringKeyMap | Array, immediate?: boolean): ResultObject; scheduleCommit(when: number, callback: string): void; clearScheduledCommit(): void; private _checkObjectHasProperty; private handleValueAccessException; protected getCommitObject(terminateCommit: boolean): CommitObject | StringKeyMap | Array; } //# sourceMappingURL=BaseAPI.d.ts.map