# Morph loader

Tiny loaders that morph between shapes and fold into a check or a cross when done.

- ID: `morph-loader`
- Import: `animui/morph-loader`
- Category: Special
- Runtime exports: `MorphLoader`
- Declaration: `types/pro/morph-loader.d.ts`
- Type provenance: reconstructed-from-docs-and-runtime
- Related: progress, skeleton, action-button, icon-morph

```tsx
import { MorphLoader } from 'animui/morph-loader';
```

This import example is not a complete render recipe: read the declaration below and its local references for required props, data, callbacks and provider context. Use `animui info morph-loader` to resolve the local declaration graph. Global setup is in `llms.txt`.

```ts
/** Reconstructed from saved Arc documentation and runtime binding evidence; original TypeScript source was unavailable. */
import type { ComponentType, ReactNode, CSSProperties, Ref, ButtonHTMLAttributes, HTMLAttributes, ReactElement } from 'react';

export interface MorphLoaderProps {
  variant?: "dots" | "bars" | "ring" | "square";
  status?: "loading" | "success" | "error";
  size?: number;
  strokeWidth?: number;
  tone?: boolean;
  label?: string;
  successLabel?: string;
  errorLabel?: string;
  decorative?: boolean;
  className?: string;
  style?: CSSProperties;
}

export declare const MorphLoader: ComponentType<MorphLoaderProps>;

export default MorphLoader;
```
