// Generated by Create API
// https://github.com/CreateAPI/CreateAPI

import Foundation
import Get
import URLQueryEncoder

extension Paths.Persona.GetPersonaPaginated {
    public func personaId(_ personaId: String) -> WithPersonaId {
        WithPersonaId(path: "\(path)/\(personaId)")
    }

    public struct WithPersonaId {
        /// Path: `/api/persona/get-persona-paginated/{persona_id}`
        public let path: String

        /// Get Persona Paginated
        public func get(page: Int? = nil, pageSize: Int? = nil) -> Request<GenAPI.PaginatedPersonaResponseSchema> {
            Request(path: path, method: "GET", query: makeGetQuery(page, pageSize), id: "studio_api_bots_persona_api_get_persona_paginated")
        }

        private func makeGetQuery(_ page: Int?, _ pageSize: Int?) -> [(String, String?)] {
            let encoder = URLQueryEncoder()
            encoder.encode(page, forKey: "page")
            encoder.encode(pageSize, forKey: "page_size")
            return encoder.items
        }
    }
}
