---
title: Overview
description: Reference page for overview.
group: reference
---
> ⚠️ **Warning:**
> Must be used within a ConsentManagerProvider. Throws an error if used outside the provider.

## State Properties

|Property|Value|
|:--|:--|
|Type Name|\`StoreRuntimeState\`|
|Source Path|\`./packages/core/src/store/type.ts\`|

\*ExtractedTypeTable: Could not extract "StoreRuntimeState" from "./packages/core/src/store/type.ts" using base path "/home/runner/work/c15t/c15t". Verify the path/name and that the file is included by your tsconfig.\*

## Action Methods

|Property|Value|
|:--|:--|
|Type Name|\`StoreActions\`|
|Source Path|\`./packages/core/src/store/type.ts\`|

\*ExtractedTypeTable: Could not extract "StoreActions" from "./packages/core/src/store/type.ts" using base path "/home/runner/work/c15t/c15t". Verify the path/name and that the file is included by your tsconfig.\*

## Key Types

### ConsentState

A record mapping consent category names to their boolean values:

```ts
type ConsentState = Record<AllConsentNames, boolean>;
// Example: { necessary: true, measurement: true, marketing: false }
```

### ConsentInfo

Metadata about when and how consent was recorded:

```ts
interface ConsentInfo {
  time: number;                    // Epoch timestamp when consent was recorded
  subjectId?: string;              // Client-generated subject ID (sub_xxx format)
  externalId?: string;             // External user ID linked via identifyUser()
  identityProvider?: string;       // Identity provider (e.g. 'clerk', 'auth0')
}
```

### LocationInfo

Detected geographic location from the c15t backend:

```ts
interface LocationInfo {
  countryCode: string;     // ISO 3166-1 alpha-2 (e.g. 'DE')
  regionCode: string;      // Region/state code (e.g. 'BY')
  jurisdiction: string;    // Applicable jurisdiction (e.g. 'GDPR', 'CCPA')
}
```

### Model

The active consent model:

```ts
type Model = 'opt-in' | 'opt-out' | 'iab' | null;
```

* `'opt-in'` — Explicit consent required before tracking (GDPR)
* `'opt-out'` — Tracking allowed by default, user can opt out (CCPA)
* `'iab'` — IAB TCF 2.3 compliance mode
* `null` — No jurisdiction detected yet
