# SlottedComponentProps

Source: /tuil/docs/reference/packages/theme/api/slotted-component-props
Locale: en

interface exported by @mwillbanks/tuil-theme.



{/* Generated by tooling/docs/generate-reference.ts. */}

## interface [#interface]

Public interface exported by `@mwillbanks/tuil-theme`.

```ts
export interface SlottedComponentProps<
  TSlots extends SlotMap,
  TState = object,
> {
  readonly slots?: Partial<SlotComponents<TSlots>>;
  readonly slotProps?: Partial<SlotProps<TSlots, TState>>;
  readonly unstyled?: boolean;
  readonly variant?: string;
  readonly size?: "sm" | "md" | "lg";
}
```

## Members [#members]

| Member      | Type                                              | Required | Description                                                                                 | Related types                                                          |
| ----------- | ------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |
| `slots`     | `Partial<SlotComponents<TSlots>> \| undefined`    | No       | The `slots` member uses the `Partial<SlotComponents<TSlots>> \| undefined` contract.        | [`SlotComponents`](/tuil/docs/reference/packages/theme/api/slot-components) |
| `slotProps` | `Partial<SlotProps<TSlots, TState>> \| undefined` | No       | The `slotProps` member uses the `Partial<SlotProps<TSlots, TState>> \| undefined` contract. | [`SlotProps`](/tuil/docs/reference/packages/theme/api/slot-props)           |
| `unstyled`  | `boolean \| undefined`                            | No       | The `unstyled` member uses the `boolean \| undefined` contract.                             | —                                                                      |
| `variant`   | `string \| undefined`                             | No       | The `variant` member uses the `string \| undefined` contract.                               | —                                                                      |
| `size`      | `"sm" \| "md" \| "lg" \| undefined`               | No       | The `size` member uses the `"sm" \| "md" \| "lg" \| undefined` contract.                    | —                                                                      |

## Parameters [#parameters]

This declaration has no public members.

## Returns [#returns]

This declaration does not return a value.

## Throws [#throws]

No thrown errors are documented for this declaration.

## Related types [#related-types]

* [`SlotComponents`](/tuil/docs/reference/packages/theme/api/slot-components)
* [`SlotMap`](/tuil/docs/reference/packages/theme/api/slot-map)
* [`SlotProps`](/tuil/docs/reference/packages/theme/api/slot-props)

## Source [#source]

[View the secondary source reference](https://github.com/mwillbanks/tuil/blob/main/packages/theme/src/index.ts)

## Package [#package]

[@mwillbanks/tuil-theme](/tuil/docs/reference/packages/theme)
