# useGridPrint

Composable for programmatic print control.

Must be used within a component that contains a TbwGrid with print enabled.

```ts
useGridPrint(selector: string): PrintMethods
```

## Parameters

| Name | Type | Description |
| ---- | ---- | ----------- |
| `selector` | <code>string</code> | Optional CSS selector to target a specific grid element via
  DOM query instead of using Vue's provide/inject. Use when the component
  contains multiple grids, e.g. `'tbw-grid.primary'` or `'#my-grid'`. |

#### Example

```vue
<script setup>
import { useGridPrint } from '@toolbox-web/grid-vue/features/print';

const { print, isPrinting } = useGridPrint();

async function handlePrint() {
  await print({ title: 'My Report', isolate: true });
  console.log('Print completed');
}
</script>

<template>
  <button @click="handlePrint" :disabled="isPrinting()">
    {{ isPrinting() ? 'Printing...' : 'Print' }}
  </button>
</template>
```
