import Gtk from "gi://Gtk"; import type { Orientation, SensitivityType } from "../../../enums/gtk3-index"; import { PositionType } from "../../../enums/gtk3-index"; import type { GjsContext } from "../../../reconciler/gjs-renderer"; import type { HostContext } from "../../../reconciler/host-context"; import { BaseElement, type GjsElement } from "../../gjs-element"; import { ElementLifecycleController } from "../../utils/element-extenders/element-lifecycle-controller"; import type { SyntheticEvent } from "../../utils/element-extenders/event-handlers"; import { EventHandlers } from "../../utils/element-extenders/event-handlers"; import type { DiffedProps } from "../../utils/element-extenders/map-properties"; import { PropertyMapper } from "../../utils/element-extenders/map-properties"; import type { AlignmentProps } from "../../utils/property-maps-factories/create-alignment-prop-mapper"; import type { ChildPropertiesProps } from "../../utils/property-maps-factories/create-child-props-mapper"; import type { ExpandProps } from "../../utils/property-maps-factories/create-expand-prop-mapper"; import type { MarginProps } from "../../utils/property-maps-factories/create-margin-prop-mapper"; import type { SizeRequestProps } from "../../utils/property-maps-factories/create-size-request-prop-mapper"; import type { StyleProps } from "../../utils/property-maps-factories/create-style-prop-mapper"; import type { TooltipProps } from "../../utils/property-maps-factories/create-tooltip-prop-mapper"; type SliderPropsMixin = ChildPropertiesProps & SizeRequestProps & AlignmentProps & MarginProps & ExpandProps & StyleProps & TooltipProps; export type SliderEvent
= {}> = SyntheticEvent
;
export interface SliderProps extends SliderPropsMixin {
orientation?: Orientation;
value?: number;
min?: number;
max?: number;
step?: number;
showValue?: boolean;
showDigits?: number;
precision?: number;
/**
* A number between `0` to `1`, representing the fill level of the
* slider.
*/
fillLevel?: number;
showFillLevel?: boolean;
restrictToFillLevel?: boolean;
flip?: boolean;
invert?: boolean;
stepSensitivity?: SensitivityType;
fixedSize?: boolean;
marks?: {
[key: number]: string;
};
marksPosition?: PositionType;
onValueChange?: (event: SliderEvent<{
value: number;
}>) => void;
}
export declare class SliderElement extends BaseElement implements GjsElement<"SLIDER", Gtk.Scale> {
static getContext(currentContext: HostContext