@sap-cloud-sdk/odata-common
Version:
SAP Cloud SDK for JavaScript common functions of OData client generator and OpenAPI clint generator.
25 lines (24 loc) • 1.62 kB
TypeScript
import { BooleanFilterFunction } from './boolean-filter-function';
import { NumberFilterFunction } from './number-filter-function';
import { StringFilterFunction } from './string-filter-function';
import type { EntityBase } from '../entity-base';
import type { FilterFunctionParameterType } from './filter-function-base';
export declare function filterFunction<EntityT extends EntityBase>(functionName: string, returnType: 'boolean', ...parameters: FilterFunctionParameterType<EntityT>[]): BooleanFilterFunction<EntityT>;
export declare function filterFunction<EntityT extends EntityBase>(functionName: string, returnType: 'int' | 'double' | 'decimal', ...parameters: FilterFunctionParameterType<EntityT>[]): NumberFilterFunction<EntityT>;
export declare function filterFunction<EntityT extends EntityBase>(functionName: string, returnType: 'string', ...parameters: FilterFunctionParameterType<EntityT>[]): StringFilterFunction<EntityT>;
/**
* @param functionName - functionName
* @param returnType - returnType
* @param parameters - parameters
* @returns A filter function
* @internal
*/
export declare function createFilterFunction<EntityT extends EntityBase>(functionName: string, returnType: FilterFunctionReturnType, ...parameters: FilterFunctionParameterType<EntityT>[]): BooleanFilterFunction<EntityT> | NumberFilterFunction<EntityT> | StringFilterFunction<EntityT>;
/**
* @internal
*/
export declare const numberReturnTypeMapping: Record<string, 'Edm.Int32' | 'Edm.Double' | 'Edm.Decimal'>;
/**
* @internal
*/
export type FilterFunctionReturnType = 'boolean' | 'int' | 'double' | 'decimal' | 'string';