import { BaseAPI } from '../../../../common/BaseAPI';
import Configuration from '../../../../common/Configuration';
import BitmovinResponse from '../../../../models/BitmovinResponse';
import Invitation from '../../../../models/Invitation';
import PaginationResponse from '../../../../models/PaginationResponse';
import { InvitationListQueryParams, InvitationListQueryParamsBuilder } from './InvitationListQueryParams';
/**
 * InvitationsApi - object-oriented interface
 * @export
 * @class InvitationsApi
 * @extends {BaseAPI}
 */
export default class InvitationsApi extends BaseAPI {
    constructor(configuration: Configuration);
    /**
     * @summary Add Invitation to Group
     * @param {string} organizationId Id of the organization
     * @param {string} groupId Id of the group
     * @param {Invitation} invitation Invitation details
     * @throws {BitmovinError}
     * @memberof InvitationsApi
     */
    create(organizationId: string, groupId: string, invitation?: Invitation): Promise<Invitation>;
    /**
     * @summary Delete Invitation
     * @param {string} organizationId Id of the organization
     * @param {string} groupId Id of the group
     * @param {string} invitationId Id of the invitation.
     * @throws {BitmovinError}
     * @memberof InvitationsApi
     */
    delete(organizationId: string, groupId: string, invitationId: string): Promise<BitmovinResponse>;
    /**
     * @summary Invitation Details
     * @param {string} organizationId Id of the organization
     * @param {string} groupId Id of the group
     * @param {string} invitationId Id of the invitation.
     * @throws {BitmovinError}
     * @memberof InvitationsApi
     */
    get(organizationId: string, groupId: string, invitationId: string): Promise<Invitation>;
    /**
     * @summary List Invitations
     * @param {string} organizationId Id of the organization
     * @param {string} groupId Id of the group
     * @param {*} [queryParameters] query parameters for filtering, sorting and pagination
     * @throws {BitmovinError}
     * @memberof InvitationsApi
     */
    list(organizationId: string, groupId: string, queryParameters?: InvitationListQueryParams | ((q: InvitationListQueryParamsBuilder) => InvitationListQueryParamsBuilder)): Promise<PaginationResponse<Invitation>>;
}
