/* Options:
Date: 2025-07-07 19:54:26
Version: 8.71
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://team.evovoice.io

//Package: 
//AddServiceStackTypes: True
//AddResponseStatus: False
//AddImplicitVersion: 
//AddDescriptionAsComments: True
IncludeTypes: ListSettingsObjects.*
//ExcludeTypes: 
//InitializeCollections: False
//TreatTypesAsStrings: 
//DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.*
*/

import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


/**
* Get all configurable settings objects for the authenticated user
*/
@Route(Path="/app/settings-objects", Verbs="GET")
@Api(Description="Get all configurable settings objects for the authenticated user")
open class ListSettingsObjects : IReturn<ListSettingsObjectsResponse>, IGet
{
    companion object { private val responseType = ListSettingsObjectsResponse::class.java }
    override fun getResponseType(): Any? = ListSettingsObjects.responseType
}

open class ListSettingsObjectsResponse
{
    open var settingsObjects:ArrayList<SettingsObject>? = null
}

open class SettingsObject
{
    open var id:String? = null
    open var name:String? = null
    open var description:String? = null
    open var readOnly:Boolean? = null
    @SerializedName("type") open var Type:SettingsObjectTypes? = null
    open var endpointType:EndpointTypes? = null
    open var fields:ArrayList<SettingsField>? = null
}