/**
 * @file LinkProvider.tsx
 * @input React, LinkContext, LinkComponentType
 * @output Exports LinkProvider component and LinkProviderProps
 * @position Provider component for polymorphic link support
 *
 * Sets the default link component for all Astryx components in the subtree.
 * Individual components can still override via the `as` prop.
 *
 * @example
 * ```
 * import Link from 'next/link';
 * <LinkProvider component={Link}>
 *   <App />
 * </LinkProvider>
 * ```
 *
 * SYNC: When modified, update these files to stay in sync:
 * - /packages/core/src/Link/index.ts
 * - /packages/core/src/Link/Link.doc.mjs
 * - /packages/cli/assets/templates/blocks/components/Link/ (showcase blocks)
 * - /packages/cli/assets/templates/blocks/components/LinkProvider/ (example blocks)
 */
import { type ReactNode } from 'react';
import type { LinkComponentType } from './types';
export interface LinkProviderProps {
    /**
     * The component to use for all link elements in the subtree.
     * Must accept href, className, style, and children props.
     *
     * @example
     * ```
     * import Link from 'next/link';
     * <LinkProvider component={Link}>
     * ```
     */
    component: LinkComponentType;
    children: ReactNode;
}
/**
 * Provides a custom link component to all Astryx components in the subtree.
 *
 * Wrap your app (or a section of it) in LinkProvider to replace
 * native `<a>` elements with your framework's link component
 * (e.g., Next.js Link, React Router Link).
 */
export declare function LinkProvider({ component, children }: LinkProviderProps): import("react").JSX.Element;
export declare namespace LinkProvider {
    var displayName: string;
}
//# sourceMappingURL=LinkProvider.d.ts.map