# PrintConfig

> _Since v1.4.0_

Configuration options for the print plugin *

## Properties

| Property | Type | Description |
| -------- | ---- | ----------- |
| `button?` | <code>boolean</code> | Show print button in toolbar (default: false) When true, adds a print icon to the grid toolbar |
| `orientation?` | <code><a href="/grid/plugins/print/types/printorientation/">PrintOrientation</a></code> | Page orientation (default: 'landscape') Grids typically print better in landscape |
| `warnThreshold?` | <code>number</code> | Show a confirmation dialog when row count exceeds this threshold (default: 500) |
| `maxRows?` | <code>number</code> | Maximum rows to print (default: 0 = unlimited) |
| `includeTitle?` | <code>boolean</code> | Include grid title in print output (default: true) Uses shell.header.title if available |
| `includeTimestamp?` | <code>boolean</code> | Include timestamp in print footer (default: true) |
| `title?` | <code>string</code> | Custom print title (overrides shell title) |
| `isolate?` | <code>boolean</code> | Print in isolation mode (default: false) |

### Property Details

#### warnThreshold

Show a confirmation dialog when row count exceeds this threshold (default: 500)

When the number of rows to print exceeds this value, the user is shown a
confirmation dialog asking if they want to proceed. This gives users a chance
to cancel before a potentially slow print operation.

Set to 0 to disable the warning dialog.

Note: This only shows a warning - it does NOT limit the rows printed.
Use `maxRows` to actually limit the output.

```ts
// Warn at 500+ rows, but allow printing all if confirmed
new PrintPlugin({ warnThreshold: 500 })

// Warn at 1000+ rows AND limit to 500 rows max
new PrintPlugin({ warnThreshold: 1000, maxRows: 500 })
```

---

#### maxRows

Maximum rows to print (default: 0 = unlimited)

When set to a positive number, only the first N rows will be printed.
This is a hard limit - excess rows are not rendered regardless of user choice.

Use `warnThreshold` to show a confirmation dialog instead of hard-limiting.

```ts
// Hard limit to 100 rows (no warning, just limits)
new PrintPlugin({ maxRows: 100 })

// Warn at 500+ AND hard limit to 1000
new PrintPlugin({ warnThreshold: 500, maxRows: 1000 })
```

---
