"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.UsersServiceClientUriTemplate = exports.UsersServiceClientNavigationMetadata = exports.createUsersServiceClient = void 0;
/* tslint:disable */
/* eslint-disable */
// Generated by Microsoft Kiota
const users_1 = require("./users/");
const kiota_abstractions_1 = require("@microsoft/kiota-abstractions");
const kiota_serialization_form_1 = require("@microsoft/kiota-serialization-form");
const kiota_serialization_json_1 = require("@microsoft/kiota-serialization-json");
const kiota_serialization_multipart_1 = require("@microsoft/kiota-serialization-multipart");
const kiota_serialization_text_1 = require("@microsoft/kiota-serialization-text");
const item_1 = require("./users/item");
/**
 * Instantiates a new UsersServiceClient and sets the default values.
 * @param backingStore The backing store to use for the models.
 * @param requestAdapter The request adapter to use to execute the requests.
 */
function createUsersServiceClient(requestAdapter, backingStore) {
    (0, kiota_abstractions_1.registerDefaultSerializer)(kiota_serialization_json_1.JsonSerializationWriterFactory);
    (0, kiota_abstractions_1.registerDefaultSerializer)(kiota_serialization_text_1.TextSerializationWriterFactory);
    (0, kiota_abstractions_1.registerDefaultSerializer)(kiota_serialization_form_1.FormSerializationWriterFactory);
    (0, kiota_abstractions_1.registerDefaultSerializer)(kiota_serialization_multipart_1.MultipartSerializationWriterFactory);
    (0, kiota_abstractions_1.registerDefaultDeserializer)(kiota_serialization_json_1.JsonParseNodeFactory);
    (0, kiota_abstractions_1.registerDefaultDeserializer)(kiota_serialization_text_1.TextParseNodeFactory);
    (0, kiota_abstractions_1.registerDefaultDeserializer)(kiota_serialization_form_1.FormParseNodeFactory);
    if (requestAdapter.baseUrl === undefined || requestAdapter.baseUrl === "") {
        requestAdapter.baseUrl = "https://graph.microsoft.com/beta";
    }
    const pathParameters = {
        "baseurl": requestAdapter.baseUrl,
        "user%2Did": "TokenToReplace",
    };
    requestAdapter.enableBackingStore(backingStore);
    return (0, kiota_abstractions_1.apiClientProxifier)(requestAdapter, pathParameters, exports.UsersServiceClientNavigationMetadata, undefined);
}
exports.createUsersServiceClient = createUsersServiceClient;
/**
 * Metadata for all the navigation properties in the request builder.
 */
exports.UsersServiceClientNavigationMetadata = {
    users: {
        requestsMetadata: users_1.UsersRequestBuilderRequestsMetadata,
        navigationMetadata: users_1.UsersRequestBuilderNavigationMetadata,
    },
    me: {
        requestsMetadata: item_1.UserItemRequestBuilderRequestsMetadata,
        navigationMetadata: item_1.UserItemRequestBuilderNavigationMetadata,
    },
};
/**
 * Uri template for the request builder.
 */
exports.UsersServiceClientUriTemplate = "{+baseurl}";
/* tslint:enable */
/* eslint-enable */
