import type { Meta, StoryObj } from '@storybook/react';
import { type MockedPerson } from './mock-data.js';
import { ObjectSetTable } from './object-set-table.js';
/**
 * The `ObjectSetTable` is a flexible, type-safe data table for rendering and editing collections of objects. It supports inline cell editing, row selection, row addition/deletion, custom cell/header rendering, sorting, and a programmatic API for advanced control.
 *
 * ## Table of contents
 *
 * - [Column Definition](?path=/docs/data-display-object-set-table-docs-column-definition--readme)
 * - [Rows](?path=/docs/data-display-object-set-table-docs-rows--readme)
 * - [Cells](?path=/docs/data-display-object-set-table-docs-cells--readme)
 * - [Editing](?path=/docs/data-display-object-set-table-docs-editing--readme)
 * - [Adding](?path=/docs/data-display-object-set-table-docs-adding--readme)
 * - [Deletion](?path=/docs/data-display-object-set-table-docs-deletion--readme)
 * - [Sorting & Reordering](?path=/docs/data-display-object-set-table-docs-sorting--readme)
 * - [Actions](?path=/docs/data-display-object-set-table-docs-actions--readme)
 * - [Events](?path=/docs/data-display-object-set-table-docs-events--readme)
 * - [API](?path=/docs/data-display-object-set-table-docs-api--readme)
 * - [Keyboard Shortcuts](?path=/docs/data-display-object-set-table-docs-keyboard-shortcuts--readme)
 *
 * ## Installation
 *
 * Install the package and include the styles:
 *
 * ```bash
 * npm install @powerhousedao/document-engineering
 * ```
 *
 * Import the CSS in your app entry (once):
 *
 * ```ts
 * import '@powerhousedao/document-engineering/style.css'
 * ```
 *
 * ## Basic usage
 *
 * ```tsx
 * import { ObjectSetTable } from '@powerhousedao/document-engineering/table'
 * import { useMemo } from 'react'
 *
 * type Person = { id: number; name: string; email: string; active: boolean }
 *
 * const data: Person[] = [
 *   { id: 1, name: 'John Doe', email: 'john@example.com', active: true },
 *   { id: 2, name: 'Jane Smith', email: 'jane@example.com', active: false },
 * ]
 *
 * export default function Example() {
 *   const columns = useMemo(() => [
 *      { field: 'name', title: 'Full Name' },
 *      { field: 'email', title: 'Email Address' },
 *      { field: 'active', type: 'boolean', title: 'Active' },
 *   ], [])
 *
 *   return <ObjectSetTable data={data} columns={columns} />
 * }
 * ```
 */
declare const meta: Meta<typeof ObjectSetTable>;
export default meta;
type Story = StoryObj<typeof ObjectSetTable<MockedPerson>>;
/**
 * A simple read-only table without row selection or editing capabilities.
 * Perfect for displaying data that doesn't need to be modified.
 */
export declare const ReadOnly: Story;
/**
 * Demonstrates different cell types and their default rendering.
 * Shows how string, number, and boolean types are displayed differently.
 */
export declare const CellTypes: Story;
/**
 * Shows how to use computed columns with value formatters to transform and categorize data.
 * Demonstrates email domain extraction, payment categorization with badges, and address formatting.
 * This story renders the ComputedColumnsExample component from the examples.
 */
export declare const ComputedColumns: StoryObj;
/**
 * Demonstrates advanced custom rendering with icons, avatars, status indicators, and styled components.
 * Shows how to create rich, visually appealing table cells with interactive elements.
 * This story renders the CustomRenderingExample component from the examples.
 */
export declare const CustomRendering: StoryObj;
export declare const EditableTable: StoryObj;
/**
 * Demonstrates row actions functionality with both primary and secondary actions.
 * Shows how to configure hover-based contextual actions for individual rows.
 * The primary action displays with an icon, while secondary actions appear in a dropdown menu.
 */
/**
 * Demonstrates row reordering functionality using drag and drop.
 * Shows how to enable row reordering and handle the reorder callback.
 * Note: Row reordering is incompatible with sortable columns.
 */
export declare const RowReordering: StoryObj;
export declare const RowActions: Story;
//# sourceMappingURL=object-set-table.stories.d.ts.map