import * as React from 'react'; import type { MediaHandle } from '../useMediaElement.js'; import { Actions } from './parts/Actions.js'; import { Expand } from './parts/Expand.js'; export interface NowPlayingBarRootProps { /** Media element handle the bar drives; omit to control playback yourself. */ media?: MediaHandle | undefined; /** Controlled playing state. */ playing?: boolean | undefined; /** 0..1 controlled progress, written to --_ag-media-progress on the root. */ progress?: number | undefined; /** Artwork image URL. */ artwork?: string | undefined; /** Called with the next playing state. */ onPlayingChange?: ((playing: boolean) => void) | undefined; /** Called when Previous is pressed; the button is shown only when set. */ onPrevious?: (() => void) | undefined; /** Called when Next is pressed; the button is shown only when set. */ onNext?: (() => void) | undefined; /** Controlled expanded state. */ expanded?: boolean | undefined; /** Called with the next expanded state. */ onExpandedChange?: ((expanded: boolean) => void) | undefined; /** Material variant of the bar. */ variant?: 'regular' | 'clear' | undefined; /** Sample the Artwork once per src; writes data-ag-media-tone and --_ag-media-luma on the root. */ sampleTone?: boolean | undefined; /** Pinned to the viewport edge: pads by env(safe-area-inset-bottom). */ fixed?: boolean | undefined; /** Id of the expandable region — required when Expand is rendered. */ expandedId?: string | undefined; /** Class name merged onto the root element. */ className?: string | undefined; /** Content rendered inside the component. */ children?: React.ReactNode; } declare function Root(props: NowPlayingBarRootProps): React.ReactElement; export declare const NowPlayingBar: { readonly Root: typeof Root; readonly Artwork: ({ src, className, ref }: { src?: string | undefined; className?: string; } & { ref?: React.Ref; }) => React.JSX.Element; readonly Title: ({ className, children, ref }: { className?: string; children?: React.ReactNode; } & { ref?: React.Ref; }) => React.JSX.Element; readonly Subtitle: ({ className, children, ref }: { className?: string; children?: React.ReactNode; } & { ref?: React.Ref; }) => React.JSX.Element; readonly Progress: ({ className, ref }: { className?: string; } & { ref?: React.Ref; }) => React.JSX.Element; readonly Actions: typeof Actions; readonly Expand: typeof Expand; }; export type NowPlayingBar = typeof NowPlayingBar; export {}; //# sourceMappingURL=NowPlayingBar.d.ts.map