@loopback/docs
Version:
Documentation files rendered at [https://loopback.io](https://loopback.io)
37 lines (26 loc) • 2.2 kB
Markdown
---
lang: en
title: 'API docs: repository.defaulthasmanythroughrepository._constructor_'
keywords: LoopBack 4.0, LoopBack 4, Node.js, TypeScript, OpenAPI
sidebar: lb4_sidebar
editurl: https://github.com/strongloop/loopback-next/tree/master/packages/repository
permalink: /doc/en/lb4/apidocs.repository.defaulthasmanythroughrepository._constructor_.html
---
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index.md) > [@loopback/repository](./repository.md) > [DefaultHasManyThroughRepository](./repository.defaulthasmanythroughrepository.md) > [(constructor)](./repository.defaulthasmanythroughrepository._constructor_.md)
## DefaultHasManyThroughRepository.(constructor)
Constructs a new instance of the `DefaultHasManyThroughRepository` class
<b>Signature:</b>
```typescript
constructor(getTargetRepository: Getter<TargetRepository>, getThroughRepository: Getter<ThroughRepository>, getTargetConstraintFromThroughModels: (throughInstances: ThroughEntity[]) => DataObject<TargetEntity>, getTargetKeys: (throughInstances: ThroughEntity[]) => TargetID[], getThroughConstraintFromSource: () => DataObject<ThroughEntity>, getTargetIds: (targetInstances: TargetEntity[]) => TargetID[], getThroughConstraintFromTarget: (targetID: TargetID[]) => DataObject<ThroughEntity>);
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
| getTargetRepository | [Getter](./context.getter.md)<!-- --><TargetRepository> | |
| getThroughRepository | [Getter](./context.getter.md)<!-- --><ThroughRepository> | |
| getTargetConstraintFromThroughModels | (throughInstances: ThroughEntity\[\]) => [DataObject](./repository.dataobject.md)<!-- --><TargetEntity> | |
| getTargetKeys | (throughInstances: ThroughEntity\[\]) => TargetID\[\] | |
| getThroughConstraintFromSource | () => [DataObject](./repository.dataobject.md)<!-- --><ThroughEntity> | |
| getTargetIds | (targetInstances: TargetEntity\[\]) => TargetID\[\] | |
| getThroughConstraintFromTarget | (targetID: TargetID\[\]) => [DataObject](./repository.dataobject.md)<!-- --><ThroughEntity> | |