---
title: "SurfaceCompositionAdmission · types"
url: https://developers.dagio.ai/reference/types-surface-composition-admission/
---

# SurfaceCompositionAdmission · types

   
                                            
                                                                                      
                                                     
                  
           
          
   

The following types define named objects and their relationships. Tables include inherited properties. Schema-derived types refer to their validated structures; a TypeScript declaration does not replace the compiler’s semantic checks.

## SurfaceCompositionAdmissionContext

Exact bundle capabilities are mandatory, never inferred from the larger portable catalogue.

| Field | Options / expected values | Description |
| --- | --- | --- |
| `catalogue` | `{ contract: "SurfaceCompositionCatalogue@1"; version: "0.0.0.1"; hash: string; }` | **Required.** Defines catalogue for this object. Observe the type, variants and bounds in the Options column. |
| `supportedComponents` | `readonly ("HomeHeader" \| "HomeLaunchers" \| "HomeLayout" \| "HomeSection" \| "HomeActivity" \| "Page" \| "Section" \| "Stack" \| "Grid" \| "Card" \| "Heading" \| "Text" \| "Badge" \| "Icon" \| "RecordIdentity" \| "RecordField" \| "RecordSettings" \| "RecordTags" \| "RecordMetric" \| "RecordRelations" \| "NativeContent" \| "QueryTable" \| "RecordCards" \| "QueryGraph" \| "QueryKanban" \| "QueryGantt" \| "QueryTimeline" \| "QueryCalendar" \| "ModelAction" \| "RecordLayout" \| "Tabs" \| "TabPanel" \| "ActionGroup" \| "Header" \| "WorkIdentity" \| "WorkNavigation" \| "WorkPanel" \| "WorkStageRail" \| "WorkTargetContent" \| "WorkSources" \| "WorkRequests" \| "WorkCriteria" \| "WorkAction")[]` | **Required.** Defines supported Components for this object. Observe the type, variants and bounds in the Options column. |

```typescript
export interface SurfaceCompositionAdmissionContext {
  readonly catalogue: SurfaceCompositionCatalogueIdentity;
  readonly supportedComponents: readonly SurfaceCompositionComponentName[];
}
```

[All references](https://developers.dagio.ai/reference/)

<!-- surface-examples:start -->

## Applied examples : Compose a record and its relations

Two declared Stacks hold main content then relations without extra frames. The preset selects the right panel’s width.

### Configuration

Component properties `RecordLayout.props`. [Properties and accepted values](https://developers.dagio.ai/surface-components/#recordlayout).

```json
{
  "asideWidth": "standard"
}
```

### Variation and connection

Component properties `RecordLayout.props`. [Properties and accepted values](https://developers.dagio.ai/surface-components/#recordlayout).

```json
{
  "asideWidth": "compact"
}
```

### UI layout example

The illustrative layout below places this configuration in the Clients/Quotes app. Insert each fragment at the stated location, with Field, Query and Action references matching the Model declarations.

1. Client identity
2. Notes and follow-up
3. Settings
4. Linked quotes

<!-- surface-examples:end -->
