/*
* Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. You may obtain a copy
* of the License at https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
* OF ANY KIND, either express or implied. See the License for the specific language
* governing permissions and limitations under the License.
*/
import { PlaybackRateButtonProps } from "./types.js";
import "client-only";
import * as react_jsx_runtime38 from "react/jsx-runtime";
//#region src/components/media-controls/playback-rate.d.ts
/**
* A media control button for changing playback speed.
*
* Integrates with media-chrome's media store to control playback rate.
* Cycles through available playback rates on each click.
* Shows the current playback rate as text (e.g., '1x', '2x').
* Invalid rates (negative, zero, NaN, Infinity) are automatically filtered out.
* If all provided rates are invalid, falls back to default rates [1, 2, 3].
*
* @param props - The button props.
* @param props.className - CSS class name for the button.
* @param props.rates - Array of playback rates to cycle through (default: [1, 2, 3]). Only positive finite numbers are accepted.
* @param props.isDisabled - Whether the button is disabled.
* @param props.ref - Ref to the button element.
* @returns The rendered playback rate button.
*
* @example
* ```tsx
* // Basic usage within MediaProvider
*
*
*
* ```
*
* @example
* ```tsx
* // With custom rates
*
* ```
*/
declare function PlaybackRateButton({
className,
rates,
isDisabled: isDisabledProp,
ref,
...rest
}: PlaybackRateButtonProps): react_jsx_runtime38.JSX.Element;
//#endregion
export { PlaybackRateButton };
//# sourceMappingURL=playback-rate.d.ts.map