export type DeleteEvent = { readonly tracking_id: string readonly audit: Audit } export type Field = { readonly type: ScalarType readonly is_array: boolean readonly fields?: map[de.nccloud.reporting.api.v0.models.field] readonly label?: string readonly description?: string } export type Filter = { readonly expression?: string readonly variables?: map[json] } export type ProjectionField = { readonly label?: string readonly description?: string readonly source?: ProjectionFieldSource readonly fields?: map[de.nccloud.reporting.api.v0.models.projection_field] } export type ProjectionFieldSource = { readonly topic: string readonly path: string readonly filter: string } export type QueryForm = { readonly view?: string readonly projection?: map[de.nccloud.reporting.api.v0.models.projection_field] readonly variables: map[json] readonly sort?: readonly Sort[] } export type QueryResponse = { readonly page: PageResponse readonly data: any } export type Topic = { readonly name: string readonly service: ServiceInfo readonly schema: map[de.nccloud.reporting.api.v0.models.field] } export type TopicResponse = { readonly page: PageResponse readonly data: readonly Topic[] } export type UpdateEvent = { readonly tracking_id: string readonly payload: any readonly audit: Audit } export type View = { readonly guid: string readonly name: string readonly projection: map[de.nccloud.reporting.api.v0.models.projection_field] readonly variables: map[de.nccloud.reporting.api.v0.enums.scalar_type] } export type ViewForm = { readonly name: string readonly projection: map[de.nccloud.reporting.api.v0.models.projection_field] readonly variables: map[de.nccloud.reporting.api.v0.enums.scalar_type] } export type ViewResponse = { readonly page: PageResponse readonly data: readonly View[] } export type ScalarType = | 'boolean' | 'date-iso8601' | 'date-time-iso8601' | 'decimal' | 'double' | 'integer' | 'long' | 'string' | 'uuid' | 'object' export type JSONValue = | string | number | boolean | { readonly [x: string]: JSONValue } | readonly JSONValue[]