import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
open class CreateFileSystemItem : ICreateDb<FileSystemItem>, IFileItem
{
    override var fileAccessType:FileAccessType? = null
    open var file:FileSystemFile? = null
}
enum class FileAccessType
{
    Public,
    Team,
    Private,
}
open class FileSystemFile : IFile
{
    override var id:Int? = null
    override var fileName:String? = null
    override var filePath:String? = null
    override var contentType:String? = null
    override var contentLength:Long? = null
    @References(Type=FileSystemItem::class)
    open var fileSystemItemId:Int? = null
}
open class FileSystemItem : IFileItem
{
    open var id:Int? = null
    override var fileAccessType:FileAccessType? = null
    open var file:FileSystemFile? = null
    open var appUserId:String? = null
}
Kotlin CreateFileSystemItem DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /json/reply/CreateFileSystemItem HTTP/1.1 
Host: blazor-gallery.servicestack.net 
Accept: application/json
Content-Type: application/json
Content-Length: length
{"fileAccessType":"Public","file":{"id":0,"fileName":"String","filePath":"String","contentType":"String","contentLength":0,"fileSystemItemId":0}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"id":0,"fileAccessType":"Public","file":{"id":0,"fileName":"String","filePath":"String","contentType":"String","contentLength":0,"fileSystemItemId":0},"appUserId":"String"}