import { OneRosterCore } from "../core.js";
import { RequestOptions } from "../lib/sdks.js";
import { APIError } from "../models/errors/apierror.js";
import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError } from "../models/errors/httpclienterrors.js";
import * as errors from "../models/errors/index.js";
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
import * as operations from "../models/operations/index.js";
import { APIPromise } from "../types/async.js";
import { Result } from "../types/fp.js";
/**
 * Create a Course
 *
 * @remarks
 * To create a new Course. The responding system must return the set of sourcedIds that have been allocated to the newly created course record.
 */
export declare function coursesCreate(client: OneRosterCore, request?: operations.CreateCourseRequest | undefined, options?: RequestOptions): APIPromise<Result<operations.CreateCourseResponse, errors.BadRequestResponseError2 | errors.UnauthorizedRequestResponseError2 | errors.ForbiddenResponseError1 | errors.NotFoundResponseError1 | errors.UnprocessableEntityResponseError2 | errors.TooManyRequestsResponseError1 | errors.InternalServerErrorResponse1 | APIError | SDKValidationError | UnexpectedClientError | InvalidRequestError | RequestAbortedError | RequestTimeoutError | ConnectionError>>;
//# sourceMappingURL=coursesCreate.d.ts.map