import java.math.*
import java.util.*
import net.servicestack.client.*
open class ProcessQuickLookup : QuickLookup()
{
    var EntityContext:String? = null
}
open class QuickLookup
{
    var DocumentID:UUID? = null
    var DocumentFieldID:String? = null
    var RegistrationProfileFieldID:String? = null
    var LookupValue:String? = null
    var DependableFields:ArrayList<RegistrationProfileFieldValue> = ArrayList<RegistrationProfileFieldValue>()
    var ApplyOptionalFilters:Boolean? = null
}
open class RegistrationProfileFieldValue
{
    var DocumentFieldID:UUID? = null
    var Value:String? = null
    var ShadowValue:String? = null
    var IsModifiedByUser:Boolean? = null
}
open class QuickLookupResponse : IBaseQuickLookupResponse
{
    var NumberOfAllRecords:Int? = null
    var Values:ArrayList<SerializableKeyValuePair<String,String>> = ArrayList<SerializableKeyValuePair<String,String>>()
    var QuickAddOptions:ArrayList<QuickAddOption> = ArrayList<QuickAddOption>()
}
open class QuickAddOption
{
    var Name:String? = null
    var EntityType:String? = null
}
Kotlin ProcessQuickLookup DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsv/reply/ProcessQuickLookup HTTP/1.1 
Host: doapigw.baasbv.nl 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
	EntityContext: String,
	DocumentID: 00000000-0000-0000-0000-000000000000,
	DocumentFieldID: String,
	RegistrationProfileFieldID: String,
	LookupValue: String,
	DependableFields: 
	[
		{
			Value: String,
			ShadowValue: String,
			IsModifiedByUser: False
		}
	],
	ApplyOptionalFilters: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
	NumberOfAllRecords: 0,
	Values: 
	[
		{
			
		}
	],
	QuickAddOptions: 
	[
		{
			Name: String,
			EntityType: String
		}
	]
}