@sap-cloud-sdk/odata-common
Version:
SAP Cloud SDK for JavaScript common functions of OData client generator and OpenAPI clint generator.
10 lines (9 loc) • 797 B
TypeScript
import type { DeSerializers } from './de-serializers';
import type { EntityBase, ODataVersionOf } from './entity-base';
import type { OneToManyLink, OneToOneLink, AllFields } from './selectable';
import type { EntityApi } from './entity-api';
/**
* Represents everything that can be used in an `.expand` statement. Only relevant for OData v4 requests.
* @typeParam EntityT - Type of the entity to be selected on
*/
export type Expandable<EntityT extends EntityBase, DeSerializersT extends DeSerializers, LinkedEntityApiT extends EntityApi<EntityBase, DeSerializersT> = EntityApi<EntityBase, DeSerializersT>> = ODataVersionOf<EntityT> extends 'v2' ? never : OneToManyLink<EntityT, DeSerializersT, LinkedEntityApiT> | OneToOneLink<EntityT, DeSerializersT, LinkedEntityApiT> | AllFields<EntityT>;