# Types

Import these from `@grafloria/angular`.

## Types

### `AnimationPreset`

Also has every member of `String`, listed on its own entry.

Animation preset

```ts
type AnimationPreset = 'none' | 'fade' | 'slide' | 'scale' | 'bounce';
```

### `EffectiveToolbarConfig`

Also has every member of `NodeToolbarConfig`, listed on its own entry.

Effective configuration type with all required properties except template

```ts
type EffectiveToolbarConfig = Required<Omit<NodeToolbarConfig, 'template'>> & { template?: TemplateRef<any> };
```

**Properties**

| Name | Type | Default | Description |
| --- | --- | --- | --- |
| `template?` | `TemplateRef<any>` |  |  |

### `PositioningStrategy`

Also has every member of `String`, listed on its own entry.

Positioning strategy
- auto: Smart positioning with boundary detection (default)
- fixed: Fixed position relative to node, no boundary detection
- follow: Follow node in real-time as it moves
- sticky: Stick to viewport edge when node scrolls off-screen

```ts
type PositioningStrategy = 'auto' | 'fixed' | 'follow' | 'sticky';
```

### `ToolbarAlignment`

Also has every member of `String`, listed on its own entry.

```ts
type ToolbarAlignment = 'start' | 'center' | 'end';
```

### `ToolbarPosition`

Also has every member of `String`, listed on its own entry.

```ts
type ToolbarPosition = 'top' | 'bottom' | 'left' | 'right';
```

### `ToolbarPresetName`

Also has every member of `String`, listed on its own entry.

```ts
type ToolbarPresetName = keyof typeof TOOLBAR_PRESETS;
```
