---
title: QueryTableInput
---

# QueryTableInput

<a href="https://github.com/remix-run/remix/blob/remix@3.0.0-alpha.6/packages/data-table/src/lib/database.ts#L135" target="_blank">View Source</a>

## Summary

Table-like metadata accepted by `database.query()`.

## Signature

```ts
type QueryTableInput<tableName, row, primaryKey> = TableMetadataLike<
  tableName,
  { [column in keyof row & string]: ColumnBuilder<row[column]> },
  primaryKey,
  TimestampConfig | null
> & {
  [tableMetadataKey]: {
    columnDefinitions: Record<string, ColumnDefinition>;
    columns: { [column in keyof row & string]: ColumnBuilder<row[column]> };
    name: tableName;
    primaryKey: primaryKey;
    timestamps: TimestampConfig | null;
    validate?: TableValidate<Record<string, unknown>>;
  };
} & Record<string, unknown>;

```