---
lang: en
title: 'API docs: repository.hasonedefinition'
keywords: LoopBack 4.0, LoopBack 4
sidebar: lb4_sidebar
editurl: https://github.com/strongloop/loopback-next/tree/master/packages/repository
permalink: /doc/en/lb4/apidocs.repository.hasonedefinition.html
---

<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@loopback/repository](./repository.md) &gt; [HasOneDefinition](./repository.hasonedefinition.md)

## HasOneDefinition interface

<b>Signature:</b>

```typescript
export interface HasOneDefinition extends RelationDefinitionBase 
```

## Properties

|  Property | Type | Description |
|  --- | --- | --- |
|  [keyFrom](./repository.hasonedefinition.keyfrom.md) | <code>string</code> |  |
|  [keyTo](./repository.hasonedefinition.keyto.md) | <code>string</code> | keyTo: The foreign key used by the target model for this relation. keyFrom: The source key used by the source model for this relation.<!-- -->E.g. when a Customer has one Address instance, then keyTo is "customerId". Note that "customerId" is the default FK assumed by the framework, users can provide a custom FK name by setting "keyTo". And Customer.id is keyFrom. keyFrom defaults to the id property of a model. Users can provide a custom source key name by setting "keyTo". |
|  [targetsMany](./repository.hasonedefinition.targetsmany.md) | <code>false</code> |  |
|  [type](./repository.hasonedefinition.type.md) | <code>RelationType.hasOne</code> |  |


