import { GetColumn } from '../parsing/value_expressions/get_column_parsing'; import { AggregateColumn } from '../parsing/aggregation/aggregate_column_parsing'; import { SelectStatement } from '../statements/select_statement'; import { GroupSelectStatement } from '../statements/group_select_statement'; import { ColumnType } from '../queries/one/table'; import { ColumnTypeRecord } from '../record'; import { CountOperation } from '../parsing/count_operation_parsing'; import { SubselectStatement } from '../statements/subselect_statement'; import { GetPartOfKey } from '../parsing/aggregation/get_part_of_key_parsing'; import { Key } from '../parsing/get_key_parsing'; import { AdaptBooleanAsInteger, ConvertToInteger } from '../parsing/conversions'; export declare type ColumnTypeMapping = [ColumnType, ColumnType]; export declare type ColumnTypeMappingRecord = Record; export declare function determineOperationColumnTypeMapping(columnTypeRecords: ColumnTypeRecord[], parameterNameToTableAlias: { [parameter: string]: string; }, op: GetPartOfKey | CountOperation | GetColumn | AggregateColumn | SubselectStatement | ConvertToInteger | AdaptBooleanAsInteger, key: Key | null): [ColumnType, ColumnType]; export declare function determineResultColumnTypeMappings(statement: SelectStatement | GroupSelectStatement): ColumnTypeMapping | ColumnTypeMappingRecord | { [set: string]: ColumnTypeMappingRecord; };