> ## Documentation Index
> Fetch the complete documentation index at: https://mint-tsdocs.saulo.engineer/llms.txt
> Use this file to discover all available pages before exploring further.

# DocTable class

> Represents table, similar to an HTML &lt;table&gt; element.

export const RefLink = ({target, children}) => {
  if (!target || typeof target !== 'string') {
    console.error('RefLink: Invalid target prop. Expected non-empty string.');
    return <span className="tsdocs-reflink broken-link" title="Invalid RefLink target" data-component="tsdocs-reflink">Invalid Link</span>;
  }
  const linkText = children || target;
  const path = typeof window !== 'undefined' && window.getRefPath ? window.getRefPath(target) : `./${target.split('.').filter(s => s.length > 0).join('/')}`;
  const isValid = typeof window !== 'undefined' && window.VALID_REFS && window.VALID_REFS.has(target);
  const className = !isValid ? 'tsdocs-reflink broken-link' : 'tsdocs-reflink';
  const title = !isValid ? `Broken API reference: ${target}` : undefined;
  return <a href={path} className={className} title={title} data-component="tsdocs-reflink">
      {linkText}
    </a>;
};

export const PageLink = ({target, children}) => {
  if (!target || typeof target !== 'string') {
    console.error('PageLink: Invalid target prop. Expected non-empty string.');
    return <span className="tsdocs-pagelink broken-link" title="Invalid PageLink target" data-component="tsdocs-pagelink">Invalid Link</span>;
  }
  const linkText = children || target;
  let path = target;
  if (!path.startsWith('/')) {
    path = `/${target}`;
  }
  const isValid = typeof window !== 'undefined' && window.VALID_PAGES && window.VALID_PAGES.has(target);
  const className = !isValid ? 'tsdocs-pagelink broken-link' : 'tsdocs-pagelink';
  const title = !isValid ? `Broken page link: ${target}` : undefined;
  return <a href={path} className={className} title={title} data-component="tsdocs-pagelink">
      {linkText}
    </a>;
};

# DocTable

## Summary

Represents table, similar to an HTML `<table>` element.

## Signature

```typescript theme={null}
export declare class DocTable extends DocNode 
```

## Constructors

### constructor

Constructs a new instance of the class

## Properties

### header

**Modifiers**: readonly
**Type**:<RefLink target="mint-tsdocs.DocTableRow">`readonly header: DocTableRow;`</RefLink>
**Default**: \`\`

### kind

**Modifiers**: readonly
**Type**:`get kind(): string;`
**Default**: \`\`

### rows

**Modifiers**: readonly
**Type**:<RefLink target="mint-tsdocs.DocTableRow">`get rows(): ReadonlyArray<DocTableRow>;`</RefLink>
**Default**: \`\`

## Methods

### addRow

### createAndAddRow

### onGetChildNodes

**Modifiers**: protected

## Events

*No events defined.*

## Remarks

Tables must have a header with at least one cell. Rows are optional during construction but tables are typically rendered with data rows. Use \[object Object] or \[object Object] to add rows after construction.

## Examples

### Example 1

```typescript theme={null}
```

## Related Documentation

* <PageLink target="/architecture/ast-nodes-layer">Custom AST nodes architecture</PageLink>
* <PageLink target="/tsdoc-reference">TSDoc reference</PageLink>
