"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.SocialNetworkInstagramsModelSwagger = exports.SocialNetworkInstagramsModel = void 0;
const social_network_instagram_schema_1 = require("../../schemas/social-network/social-network-instagram.schema");
const delete_schema_1 = require("../../schemas/delete.schema");
const mongoose_1 = __importDefault(require("mongoose"));
const abstract_model_1 = require("../abstract.model");
const collection = "social-network-instagrams";
const schemaModelsMongoose = social_network_instagram_schema_1.schema.mongoose(social_network_instagram_schema_1.schema.schemas.sessionSchema);
const AbstractSchemaOptions = {
    timestamps: true,
    versionKey: false,
};
const Schema = new mongoose_1.default.Schema(schemaModelsMongoose, AbstractSchemaOptions);
(0, abstract_model_1.customsSchema)(Schema);
const getItem = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.parentSchema,
}).definitions;
const responseSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.responseSchema,
}).definitions;
const connectSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.connectSchema,
}).definitions;
const disconnectSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.disconnectSchema,
}).definitions;
const sessionSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.sessionSchema,
}).definitions;
const sendMessageSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.sendMessageSchema,
}).definitions;
const sendPhotosSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.sendPhotosSchema,
}).definitions;
const sendStoriesSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.sendStoriesSchema,
}).definitions;
const sendVideosSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.sendVideosSchema,
}).definitions;
const sendAudiosSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.sendAudiosSchema,
}).definitions;
const publishMultimediaSchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.publishMultimediaSchema,
}).definitions;
const publishStorySchema = social_network_instagram_schema_1.schema.swagger({
    _id: "String",
    ...social_network_instagram_schema_1.schema.schemas.publishStorySchema,
}).definitions;
const deleteItem = delete_schema_1.schema.swagger(delete_schema_1.schema.schemas.parentSchema).definitions;
exports.SocialNetworkInstagramsModel = mongoose_1.default.model(collection, Schema);
exports.SocialNetworkInstagramsModelSwagger = {
    SocialNetworkInstagramsGetItem: {
        type: "object",
        properties: getItem,
    },
    SocialNetworkInstagramsGetItems: {
        type: "object",
        properties: getItem,
    },
    SocialNetworkInstagramsCreateItem: {
        type: "object",
        properties: getItem,
    },
    SocialNetworkInstagramsUpdateItem: {
        type: "object",
        properties: getItem,
    },
    SocialNetworkInstagramsDeleteItem: {
        type: "object",
        properties: deleteItem,
    },
    SocialNetworkInstagramsSessionItem: {
        type: "object",
        properties: sessionSchema,
    },
    SocialNetworkInstagramsConnectItem: {
        type: "object",
        properties: connectSchema,
    },
    SocialNetworkInstagramsDisconnectItem: {
        type: "object",
        properties: disconnectSchema,
    },
    SocialNetworkInstagramsSendMessageItem: {
        type: "object",
        properties: sendMessageSchema,
    },
    SocialNetworkInstagramsSendStoriesItem: {
        type: "object",
        properties: sendStoriesSchema,
    },
    SocialNetworkInstagramsSendPhotosItem: {
        type: "object",
        properties: sendPhotosSchema,
    },
    SocialNetworkInstagramsSendVideosItem: {
        type: "object",
        properties: sendVideosSchema,
    },
    SocialNetworkInstagramsSendAudiosItem: {
        type: "object",
        properties: sendAudiosSchema,
    },
    SocialNetworkInstagramsPublishMultimediaItem: {
        type: "object",
        properties: publishMultimediaSchema,
    },
    SocialNetworkInstagramsPublishStoryItem: {
        type: "object",
        properties: publishStorySchema,
    },
    SocialNetworkInstagramsResponse: {
        type: "object",
        properties: responseSchema,
    },
};
