import { JSX } from 'solid-js';
import { CardEvent } from '../primitives/card-contract';
import { EmbedCardData } from '../primitives/embed-providers';
export interface EmbedProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, 'onError'> {
    /** The card id correlating every emitted event. */
    cardId: string;
    /** The embed payload (data-down). */
    data: EmbedCardData;
    /** Emit a contract CardEvent up (host routes it). */
    onEmit?: (event: CardEvent) => void;
}
/**
 * `Embed` — a privacy-first lazy media facade. Initial render is a poster + a play
 * button: NO provider iframe, NO provider JS, NO cookies until the user opts in.
 * On play it swaps in the provider `<iframe>` (youtube-nocookie / vimeo dnt /
 * allowlisted generic). A persistent "Open on {provider}" affordance routes the
 * contract `open` verb so a blocked embed is never a dead end. The only verbs it
 * emits are lifecycle `ready`, `open`, and failure `error`.
 */
export declare function Embed(props: EmbedProps): JSX.Element;
export type { EmbedCardData } from '../primitives/embed-providers';
