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

# Core

> Central authority and role-based access control

## Core Contracts

The Core module establishes the central authority for role-based access control across the infiniFi protocol.

## Contracts

<CardGroup cols={2}>
  <Card title="InfiniFiCore.sol" icon="cube" href="./infini-fi-core">
    Central role registry and access control
  </Card>

  <Card title="CoreControlled.sol" icon="shield" href="./core-controlled">
    Base contract for role-based access
  </Card>
</CardGroup>

## Architecture

Every contract requiring access control delegates role checks to the `InfiniFiCore` registry. The contract sets up a rigid governance structure where the `GOVERNOR` role is the root admin.

## Key Roles

| Role | Description |
| - | - |
| `GOVERNOR` | Root role for administration |
| `PAUSE` | Can pause protocol functions |
| `UNPAUSE` | Can unpause functions |
| `PROTOCOL_PARAMETERS` | Authority to update core parameters |
| `MINOR_ROLES_MANAGER` | Manages non-critical roles |
| `ENTRY_POINT` | Trusted entry point for contract routing |
| `RECEIPT_TOKEN_MINTER` | Authorized to mint iUSD, siUSD, liUSD |
| `RECEIPT_TOKEN_BURNER` | Authorized to burn receipt tokens |
| `LOCKED_TOKEN_MANAGER` | Manages lock/unlock operations |
| `TRANSFER_RESTRICTOR` | Governs transfer rules |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.