UNPKG

aura-glass

Version:

A comprehensive glassmorphism design system for React applications with 142+ production-ready components

85 lines 2.47 kB
/** * AuraGlass Live Cursor Presence * Real-time collaborative cursor tracking with glass effects */ import React from "react"; interface CursorUser { id: string; name: string; avatar?: string; color: string; isTyping?: boolean; lastSeen: number; } interface CursorPosition { x: number; y: number; timestamp: number; } interface GlassLiveCursorPresenceProps { children: React.ReactNode; className?: string; roomId: string; currentUser: CursorUser; connectionUrl?: string; maxUsers?: number; showTrails?: boolean; showLabels?: boolean; cursorSize?: number; trailLength?: number; fadeTimeout?: number; smoothing?: number; glassEffect?: boolean; onUserJoin?: (user: CursorUser) => void; onUserLeave?: (userId: string) => void; onCursorMove?: (userId: string, position: CursorPosition) => void; } export declare function GlassLiveCursorPresence({ children, className, roomId, currentUser, connectionUrl, maxUsers, showTrails, showLabels, cursorSize, trailLength, fadeTimeout, smoothing, glassEffect, onUserJoin, onUserLeave, onCursorMove, }: GlassLiveCursorPresenceProps): import("react/jsx-runtime").JSX.Element; export declare function useLiveCursorPresence(roomId: string, currentUser: CursorUser): { connectedUsers: CursorUser[]; isConnected: boolean; broadcastTyping: (isTyping: boolean) => void; sendReaction: (reaction: string, position: { x: number; y: number; }) => void; }; export declare const cursorPresencePresets: { minimal: { showTrails: boolean; showLabels: boolean; cursorSize: number; glassEffect: boolean; }; standard: { showTrails: boolean; showLabels: boolean; cursorSize: number; trailLength: number; glassEffect: boolean; }; immersive: { showTrails: boolean; showLabels: boolean; cursorSize: number; trailLength: number; smoothing: number; glassEffect: boolean; }; gaming: { showTrails: boolean; showLabels: boolean; cursorSize: number; trailLength: number; smoothing: number; glassEffect: boolean; }; presentation: { showTrails: boolean; showLabels: boolean; cursorSize: number; glassEffect: boolean; }; }; export {}; //# sourceMappingURL=GlassLiveCursorPresence.d.ts.map