import { ControllerGeneratorOptionsWithClient } from '../../comms/controller'; import { BaseFields } from '../../models/fields/base-fields'; import { Measurement } from '../../models/measurement'; import { TableQuery, EffectiveTableQuery } from '../../comms/table-controller'; interface Query extends TableQuery { includePinsWithoutReports?: boolean; reportTypeHashIds: string[]; gridHashId?: string; pinGroupHashIds?: string[]; quantityHashIds?: string[]; fieldKeys?: string[]; pinFieldKeys?: string[]; edgeFieldKeys?: string[]; since?: Date; before?: Date; } type Request = { query: Query; }; interface EffectiveQuery extends EffectiveTableQuery { includePinsWithoutReports: boolean; reportTypeHashIds: string[]; gridHashId?: string; pinGroupHashIds?: string[]; quantityHashIds: string[]; fieldKeys: string[]; since?: Date; before?: Date; } interface EffectiveRequest { query: EffectiveQuery; } interface ResponseRow { report: { hashId: string; createdAt: Date; updatedAt: Date; generatedAt: Date; reportTypeHashId: string; pinObservations: { measurement: Measurement; quantityHashId: string; }[]; pinGroupFields: BaseFields; } | null; pinGroup: { hashId: string; name: string; }; pin: { hashId: string; name: string; fields: BaseFields; }; edge: { hashId: string; name: string; fields: BaseFields; } | null; } interface Response { nextPageOffset: string | null; rows: ResponseRow[]; } declare const controllerGeneratorOptions: ControllerGeneratorOptionsWithClient; export { controllerGeneratorOptions, Request, EffectiveRequest, Response, Query, ResponseRow, };