import { type InvitationParticipantInfo, type InviteParticipantsOperation } from '@microsoft/msgraph-sdk/models/index.js';
import { type AdditionalDataHolder, type BackedModel, type BaseRequestBuilder, type Parsable, type ParseNode, type RequestConfiguration, type RequestInformation, type RequestsMetadata, type SerializationWriter } from '@microsoft/kiota-abstractions';
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {InvitePostRequestBody}
 */
export declare function createInvitePostRequestBodyFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record<string, (node: ParseNode) => void>);
/**
 * The deserialization information for the current model
 * @param InvitePostRequestBody The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
export declare function deserializeIntoInvitePostRequestBody(invitePostRequestBody?: Partial<InvitePostRequestBody> | undefined): Record<string, (node: ParseNode) => void>;
export interface InvitePostRequestBody extends AdditionalDataHolder, BackedModel, Parsable {
    /**
     * Stores model information.
     */
    backingStoreEnabled?: boolean | null;
    /**
     * The clientContext property
     */
    clientContext?: string | null;
    /**
     * The participants property
     */
    participants?: InvitationParticipantInfo[] | null;
}
/**
 * Provides operations to call the invite method.
 */
export interface InviteRequestBuilder extends BaseRequestBuilder<InviteRequestBuilder> {
    /**
     * Delete a specific participant in a call. In some situations, it is appropriate for an application to remove a participant from an active call. This action can be done before or after the participant answers the call. When an active caller is removed, they are immediately dropped from the call with no pre- or post-removal notification. When an invited participant is removed, any outstanding add participant request is canceled.
     * @param body The request body
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {Promise<InviteParticipantsOperation>}
     * @throws {ODataError} error when the service returns a 4XX or 5XX status code
     * @see {@link https://learn.microsoft.com/graph/api/participant-delete?view=graph-rest-1.0|Find more info here}
     */
    post(body: InvitePostRequestBody, requestConfiguration?: RequestConfiguration<object> | undefined): Promise<InviteParticipantsOperation | undefined>;
    /**
     * Delete a specific participant in a call. In some situations, it is appropriate for an application to remove a participant from an active call. This action can be done before or after the participant answers the call. When an active caller is removed, they are immediately dropped from the call with no pre- or post-removal notification. When an invited participant is removed, any outstanding add participant request is canceled.
     * @param body The request body
     * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options.
     * @returns {RequestInformation}
     */
    toPostRequestInformation(body: InvitePostRequestBody, requestConfiguration?: RequestConfiguration<object> | undefined): RequestInformation;
}
/**
 * Serializes information the current object
 * @param InvitePostRequestBody The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
export declare function serializeInvitePostRequestBody(writer: SerializationWriter, invitePostRequestBody?: Partial<InvitePostRequestBody> | undefined | null, isSerializingDerivedType?: boolean): void;
/**
 * Uri template for the request builder.
 */
export declare const InviteRequestBuilderUriTemplate = "{+baseurl}/communications/calls/{call%2Did}/participants/invite";
/**
 * Metadata for all the requests in the request builder.
 */
export declare const InviteRequestBuilderRequestsMetadata: RequestsMetadata;
//# sourceMappingURL=index.d.ts.map