"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.InstanceRequestBuilderUriTemplate = exports.InstanceRequestBuilderRequestsMetadata = exports.InstanceRequestBuilderNavigationMetadata = void 0;
/* tslint:disable */
/* eslint-disable */
// Generated by Microsoft Kiota
const models_1 = require("@microsoft/msgraph-beta-sdk/models/");
const oDataErrors_1 = require("@microsoft/msgraph-beta-sdk/models/oDataErrors/");
const acceptRecommendations_1 = require("./acceptRecommendations/");
const applyDecisions_1 = require("./applyDecisions/");
const batchRecordDecisions_1 = require("./batchRecordDecisions/");
const contactedReviewers_1 = require("./contactedReviewers/");
const definition_1 = require("./definition/");
const resetDecisions_1 = require("./resetDecisions/");
const sendReminder_1 = require("./sendReminder/");
const stages_1 = require("./stages/");
const stop_1 = require("./stop/");
const stopApplyDecisions_1 = require("./stopApplyDecisions/");
/**
 * Mapper for query parameters from symbol name to serialization name represented as a constant.
 */
const InstanceRequestBuilderGetQueryParametersMapper = {
    "expand": "%24expand",
    "select": "%24select",
};
/**
 * Metadata for all the navigation properties in the request builder.
 */
exports.InstanceRequestBuilderNavigationMetadata = {
    acceptRecommendations: {
        uriTemplate: acceptRecommendations_1.AcceptRecommendationsRequestBuilderUriTemplate,
        requestsMetadata: acceptRecommendations_1.AcceptRecommendationsRequestBuilderRequestsMetadata,
    },
    applyDecisions: {
        uriTemplate: applyDecisions_1.ApplyDecisionsRequestBuilderUriTemplate,
        requestsMetadata: applyDecisions_1.ApplyDecisionsRequestBuilderRequestsMetadata,
    },
    batchRecordDecisions: {
        uriTemplate: batchRecordDecisions_1.BatchRecordDecisionsRequestBuilderUriTemplate,
        requestsMetadata: batchRecordDecisions_1.BatchRecordDecisionsRequestBuilderRequestsMetadata,
    },
    contactedReviewers: {
        uriTemplate: contactedReviewers_1.ContactedReviewersRequestBuilderUriTemplate,
        requestsMetadata: contactedReviewers_1.ContactedReviewersRequestBuilderRequestsMetadata,
        navigationMetadata: contactedReviewers_1.ContactedReviewersRequestBuilderNavigationMetadata,
    },
    definition: {
        uriTemplate: definition_1.DefinitionRequestBuilderUriTemplate,
        requestsMetadata: definition_1.DefinitionRequestBuilderRequestsMetadata,
    },
    resetDecisions: {
        uriTemplate: resetDecisions_1.ResetDecisionsRequestBuilderUriTemplate,
        requestsMetadata: resetDecisions_1.ResetDecisionsRequestBuilderRequestsMetadata,
    },
    sendReminder: {
        uriTemplate: sendReminder_1.SendReminderRequestBuilderUriTemplate,
        requestsMetadata: sendReminder_1.SendReminderRequestBuilderRequestsMetadata,
    },
    stages: {
        uriTemplate: stages_1.StagesRequestBuilderUriTemplate,
        requestsMetadata: stages_1.StagesRequestBuilderRequestsMetadata,
        navigationMetadata: stages_1.StagesRequestBuilderNavigationMetadata,
    },
    stop: {
        uriTemplate: stop_1.StopRequestBuilderUriTemplate,
        requestsMetadata: stop_1.StopRequestBuilderRequestsMetadata,
    },
    stopApplyDecisions: {
        uriTemplate: stopApplyDecisions_1.StopApplyDecisionsRequestBuilderUriTemplate,
        requestsMetadata: stopApplyDecisions_1.StopApplyDecisionsRequestBuilderRequestsMetadata,
    },
};
/**
 * Metadata for all the requests in the request builder.
 */
exports.InstanceRequestBuilderRequestsMetadata = {
    delete: {
        responseBodyContentType: "application/json",
        errorMappings: {
            _4XX: oDataErrors_1.createODataErrorFromDiscriminatorValue,
            _5XX: oDataErrors_1.createODataErrorFromDiscriminatorValue,
        },
        adapterMethodName: "sendNoResponseContentAsync",
    },
    get: {
        responseBodyContentType: "application/json",
        errorMappings: {
            _4XX: oDataErrors_1.createODataErrorFromDiscriminatorValue,
            _5XX: oDataErrors_1.createODataErrorFromDiscriminatorValue,
        },
        adapterMethodName: "sendAsync",
        responseBodyFactory: models_1.createAccessReviewInstanceFromDiscriminatorValue,
        queryParametersMapper: InstanceRequestBuilderGetQueryParametersMapper,
    },
    patch: {
        responseBodyContentType: "application/json",
        errorMappings: {
            _4XX: oDataErrors_1.createODataErrorFromDiscriminatorValue,
            _5XX: oDataErrors_1.createODataErrorFromDiscriminatorValue,
        },
        adapterMethodName: "sendAsync",
        responseBodyFactory: models_1.createAccessReviewInstanceFromDiscriminatorValue,
        requestBodyContentType: "application/json",
        requestBodySerializer: models_1.serializeAccessReviewInstance,
        requestInformationContentSetMethod: "setContentFromParsable",
    },
};
/**
 * Uri template for the request builder.
 */
exports.InstanceRequestBuilderUriTemplate = "{+baseurl}/users/{user%2Did}/pendingAccessReviewInstances/{accessReviewInstance%2Did}/decisions/{accessReviewInstanceDecisionItem%2Did}/instance{?%24select,%24expand}";
/* tslint:enable */
/* eslint-enable */
