---
title: "SurfaceCompositionWorkBindings · types"
url: https://developers.dagio.ai/fr/reference/types-surface-composition-work-bindings/
---

# SurfaceCompositionWorkBindings · types

   
                                               
                                                                                        
                                                         
                  
           
          
   

Les types ci-dessous définissent les objets nommés et leurs relations. Les propriétés héritées sont incluses dans les tableaux. Les types dérivés d’un schéma renvoient à sa structure; une déclaration TypeScript ne remplace pas les contrôles sémantiques du compilateur.

## SurfaceCompositionWorkConsolidationParams

Explicit preparation families retain their own fields and native owners.

```typescript
export type SurfaceCompositionWorkConsolidationParams = z.infer<
  typeof surfaceCompositionWorkConsolidationParamsSchema
>;
```

## SurfaceCompositionWorkPreparationIntent

No implicit conversion from a profile into an Action is permitted.

```typescript
export type SurfaceCompositionWorkPreparationIntent =
  SurfaceCompositionWorkActionParams | SurfaceCompositionWorkConsolidationParams;
```

```typescript
type SurfaceCompositionWorkPreparationIntent = { experienceKey: string; sectionKey: string; bindingKey: string; scope: "rootWork" | "selectedStage" | "retainedTarget"; actionKey: string; } | { kind: "consolidation"; experienceKey: string; sectionKey: string; bindingKey: string; scope: "selectedStage"; profileKey: string; };
```

## SurfaceCompositionWorkActionParams

Every scoped event is parsed through this exact definition, never a permissive fallback.

```typescript
export type SurfaceCompositionWorkActionParams = z.infer<
  typeof surfaceCompositionWorkActionParamsSchema
>;
```

[Toutes les références](https://developers.dagio.ai/fr/reference/)

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

## Exemples appliqués : Les soumissions du client courant

La Query déclare clientId; le binding fournit l’identité de la fiche ouverte.

### Configuration

Fragment à placer dans `queries[]`. [Propriétés et valeurs admises](https://developers.dagio.ai/fr/reference/workspace-model-foundation/).

```json
{
  "contract": "WorkspaceQuery@1",
  "key": "client-quotes",
  "label": "Soumissions du client",
  "spaceKeys": [
    "quotes"
  ],
  "definitionPaths": [
    "workspace/quotes/surface/quote"
  ],
  "parameters": [
    {
      "key": "clientId",
      "type": "node-id",
      "required": true
    }
  ],
  "predicates": [],
  "relations": [
    {
      "linkTypePath": "application/client",
      "direction": "outgoing",
      "parameterKey": "clientId",
      "distinct": true
    }
  ],
  "orderBy": [
    {
      "fieldKey": "updatedAt",
      "direction": "descending"
    }
  ],
  "aggregate": "none",
  "pageSize": 25,
  "maximumDepth": 1
}
```

### Variante et raccordement

Fragment à placer dans `presentation.recordProfiles[].queryBindings[]`. [Propriétés et valeurs admises](https://developers.dagio.ai/fr/reference/workspace-record-query-binding/).

```json
{
  "key": "client-quotes",
  "queryKey": "client-quotes",
  "parameters": {
    "clientId": {
      "kind": "entity-id",
      "definitionPath": "workspace/clients/surface/client"
    }
  }
}
```

### Exemple de disposition UI

La disposition illustrative ci-dessous situe cette configuration dans l’app Clients/Soumissions. Chaque fragment s’insère à l’emplacement indiqué; ses références aux Fields, Queries et Actions correspondent aux déclarations du Model.

1. Numéro
2. État
3. Montant
4. Dernière mise à jour

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