> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gains.trade/llms.txt
> Use this file to discover all available pages before exploring further.

# IReferrals

*Contains the types for the GNSReferrals facet*

## ReferralsStorage

```solidity theme={null}
struct ReferralsStorage {
  mapping(address => struct IReferrals.AllyDetails) allyDetails;
  mapping(address => struct IReferrals.ReferrerDetails) referrerDetails;
  mapping(address => address) referrerByTrader;
  uint256 allyFeeP;
  uint256 startReferrerFeeP;
  uint256 openFeeP;
  uint256 targetVolumeUsd;
  uint256[43] __gap;
}
```

## AllyDetails

```solidity theme={null}
struct AllyDetails {
  address[] referrersReferred;
  uint256 volumeReferredUsd;
  uint256 pendingRewardsGns;
  uint256 totalRewardsGns;
  uint256 totalRewardsValueUsd;
  bool active;
}
```

## ReferrerDetails

```solidity theme={null}
struct ReferrerDetails {
  address ally;
  address[] tradersReferred;
  uint256 volumeReferredUsd;
  uint256 pendingRewardsGns;
  uint256 totalRewardsGns;
  uint256 totalRewardsValueUsd;
  bool active;
}
```
