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

import Foundation
import Get
import URLQueryEncoder

extension Paths.Studio {
    public var accessInvitations: AccessInvitations {
        AccessInvitations(path: path + "/access-invitations")
    }

    public struct AccessInvitations {
        /// Path: `/api/studio/access-invitations`
        public let path: String

        /// Get Access Invitations
        ///
        /// Get paginated list of studio invitation codes.
        /// Staff users see all invitations, regular users see only their own.
        public func get(cursor: String? = nil, limit: Int? = nil) -> Request<GenAPI.StudioAccessInviteSchema> {
            Request(path: path, method: "GET", query: makeGetQuery(cursor, limit), id: "studio_api_bots_studio_api_get_access_invitations")
        }

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