type VideoTileMoreMenuProps = {
moreMenu?: undefined;
moreMenuTriggerAriaLabel?: undefined;
} | {
/** Menu items wrapped automatically in `TileMoreMenu`. Ignored when `trailingTop` is provided. */
moreMenu: React.ReactNode;
/** Accessible label for the auto-wrapped menu trigger button. Required when `moreMenu` is set. */
moreMenuTriggerAriaLabel: string;
};
export type VideoTileProps = {
/** Applied directly to the inner content element. */
contentStyle?: React.CSSProperties;
label: string;
showLabel?: boolean;
sizeLabel?: string;
children?: React.ReactNode;
className?: string;
/**
* When provided the tile enters generating mode: controls are hidden and the
* node is rendered as an overlay. Pass a `` here.
*/
loader?: React.ReactNode;
/** Blur the content behind the loader overlay. */
loadingBlur?: boolean;
/** Passed directly to `Tile.trailingTop` without wrapping — use when the caller already provides a fully-rendered menu node. Takes precedence over `moreMenu`. */
trailingTop?: React.ReactNode;
isSelected?: boolean;
/** Mirrors `Tile.Selectable.persistentSelecting`: when true (and the tile is selectable), body clicks route to `onSelectedChange` instead of `onClick`. */
persistentSelecting?: boolean;
onSelectedChange?: (isSelected: boolean, event: React.MouseEvent) => void;
onClick?: React.MouseEventHandler;
/** Callback for the save button. When omitted the save button is not rendered. */
onSave?: () => void;
/** Accessible label for the save button. */
saveLabel?: string;
/** Label shown after the save button has been clicked. */
savedLabel?: string;
} & VideoTileMoreMenuProps;
export declare function VideoTile({ contentStyle, label, showLabel, sizeLabel, children, className, loader, loadingBlur, trailingTop, moreMenu, moreMenuTriggerAriaLabel, isSelected, persistentSelecting, onSelectedChange, onClick, onSave, saveLabel, savedLabel, }: VideoTileProps): import("react").JSX.Element;
export {};
//# sourceMappingURL=VideoTile.d.ts.map