aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
75 lines • 2.47 kB
TypeScript
export interface SpringConfig {
stiffness?: number;
damping?: number;
mass?: number;
precision?: number;
velocity?: number;
}
export interface SpringTarget {
[key: string]: number;
}
export interface SpringState {
[key: string]: {
position: number;
velocity: number;
isAnimating: boolean;
};
}
export interface MultiSpringOptions {
config?: SpringConfig;
onUpdate?: (values: Record<string, number>) => void;
onComplete?: (values: Record<string, number>) => void;
}
export declare function useMultiSpring(initialValues?: SpringTarget, options?: MultiSpringOptions): {
values: Record<string, number>;
isAnimating: boolean;
start: (targets: SpringTarget) => void;
set: (values: SpringTarget) => void;
stop: () => void;
reset: () => void;
config: Required<SpringConfig>;
};
export declare function useSpringTransform(initialTransform?: {
x?: number;
y?: number;
scale?: number;
rotation?: number;
opacity?: number;
}, options?: MultiSpringOptions): {
transform: string;
style: {
transform: string;
opacity: number;
};
values: Record<string, number>;
isAnimating: boolean;
start: (targets: SpringTarget) => void;
set: (values: SpringTarget) => void;
stop: () => void;
reset: () => void;
config: Required<SpringConfig>;
};
export declare function useSpringColor(initialColor?: string, options?: MultiSpringOptions): {
color: string;
values: Record<string, number>;
isAnimating: boolean;
start: (targets: SpringTarget) => void;
set: (values: SpringTarget) => void;
stop: () => void;
reset: () => void;
config: Required<SpringConfig>;
};
export declare function useSpringArray(initialArray?: number[], options?: MultiSpringOptions): {
array: number[];
values: Record<string, number>;
isAnimating: boolean;
start: (targets: SpringTarget) => void;
set: (values: SpringTarget) => void;
stop: () => void;
reset: () => void;
config: Required<SpringConfig>;
};
export declare const createSpringPreset: (preset: "gentle" | "wobbly" | "stiff" | "slow" | "bouncy") => SpringConfig;
export declare const createSpringSequence: (targets: SpringTarget[], config?: SpringConfig) => SpringTarget[];
export declare const interpolateSprings: (springs: MultiSpringOptions[], progress: number) => SpringConfig;
//# sourceMappingURL=useMultiSpringBasic.d.ts.map