/*
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
import { PagedAsyncIterableIterator } from "@azure/core-paging";
import {
StudentDetails,
StudentsListOptionalParams,
StudentsGetOptionalParams,
StudentsGetResponse,
StudentsDeleteOptionalParams,
StudentsCreateOrUpdateOptionalParams,
StudentsCreateOrUpdateResponse
} from "../models";
///
/** Interface representing a Students. */
export interface Students {
/**
* Get a list of details about students that are associated with the specified lab.
* @param billingAccountName Billing account name.
* @param billingProfileName Billing profile name.
* @param invoiceSectionName Invoice section name.
* @param options The options parameters.
*/
list(
billingAccountName: string,
billingProfileName: string,
invoiceSectionName: string,
options?: StudentsListOptionalParams
): PagedAsyncIterableIterator;
/**
* Get the details for a specific student in the specified lab by student alias
* @param billingAccountName Billing account name.
* @param billingProfileName Billing profile name.
* @param invoiceSectionName Invoice section name.
* @param studentAlias Student alias.
* @param options The options parameters.
*/
get(
billingAccountName: string,
billingProfileName: string,
invoiceSectionName: string,
studentAlias: string,
options?: StudentsGetOptionalParams
): Promise;
/**
* Delete the specified student based on the student alias.
* @param billingAccountName Billing account name.
* @param billingProfileName Billing profile name.
* @param invoiceSectionName Invoice section name.
* @param studentAlias Student alias.
* @param options The options parameters.
*/
delete(
billingAccountName: string,
billingProfileName: string,
invoiceSectionName: string,
studentAlias: string,
options?: StudentsDeleteOptionalParams
): Promise;
/**
* Create and add a new student to the specified lab or update the details of an existing student in a
* lab. Note the student must have a valid tenant to accept the lab after they have been added to lab.
* @param billingAccountName Billing account name.
* @param billingProfileName Billing profile name.
* @param invoiceSectionName Invoice section name.
* @param studentAlias Student alias.
* @param parameters Request parameters that are provided to update student properties.
* @param options The options parameters.
*/
createOrUpdate(
billingAccountName: string,
billingProfileName: string,
invoiceSectionName: string,
studentAlias: string,
parameters: StudentDetails,
options?: StudentsCreateOrUpdateOptionalParams
): Promise;
}