export type MotionPreference = 'full' | 'calm' | 'none'; export type DurationName = 'instant' | 'micro' | 'small' | 'medium' | 'large'; export type EaseName = 'standard' | 'emphasized' | 'emphasized-decelerate' | 'accelerate'; export type SpringName = 'snappy' | 'smooth' | 'fluid'; export type MotionTokenName = `duration-${DurationName}` | `spring-${SpringName}`; export declare const DURATIONS_MS: Record; export declare const AMBIENT_DURATION_MS = 40000; export declare const EASES: Record; export declare const SPRINGS: Record; export declare const MOTION_CSS_VARS: readonly string[]; /** Properties components may animate (lint auraglass/motion-*): */ export declare const ANIMATABLE: readonly ["transform", "opacity", "translate", "scale", "--ag-specular", "--_ag-optics", "--_ag-press", "--_ag-refraction-scale"]; /** S-13 runtime, implemented by MAT at src/motion/index.ts (internal entry, not a public subpath). */ export type FrameCallback = (dtMs: number, nowMs: number) => void; export interface MotionRuntime { subscribeFrame(cb: FrameCallback, opts?: { element?: Element; }): () => void; observeOffscreen(el: Element): () => void; startMorph(update: () => void | Promise, opts?: { surfaces?: Element[]; }): Promise; } export interface DragBindings { onPointerDown: (e: PointerEvent) => void; style?: Record; } export interface MotionCapability { dragDetents?(opts: { detents: number[]; axis: 'x' | 'y'; onSettle(i: number): void; }): DragBindings; momentum?(opts: { axis: 'x' | 'y'; bounds: [number, number]; }): DragBindings; } //# sourceMappingURL=motion.d.ts.map