import { TSerializableEntitiesService } from '../../Abstract'; import { TKinematicState } from '../../Kinematic'; import { TWithCreateFromConfigService, TWithCreateService, TWithFactoryService, TWithRegistryService } from '../../Mixins'; import { TPhysicsBody } from './TPhysicsBody'; import { TPhysicsBodyConfig } from './TPhysicsBodyConfig'; import { TPhysicsBodyFactory } from './TPhysicsBodyFactory'; import { TPhysicsBodyParams } from './TPhysicsBodyParams'; import { TPhysicsBodyRegistry } from './TPhysicsBodyRegistry'; import { TPhysicsDependencies } from './TPhysicsDependencies'; export type TPhysicsBodyServiceWithCreate = TWithCreateService; export type TPhysicsBodyServiceWithCreateFromConfig = TWithCreateFromConfigService; export type TPhysicsBodyServiceWithFactory = TWithFactoryService; export type TPhysicsBodyServiceWithRegistry = TWithRegistryService; export type TPhysicsBodyService = TSerializableEntitiesService & TPhysicsBodyServiceWithCreate & TPhysicsBodyServiceWithCreateFromConfig & TPhysicsBodyServiceWithFactory & TPhysicsBodyServiceWithRegistry & Readonly<{ getKinematicDataFromPhysics: (body: TPhysicsBody) => TKinematicState; }>;