aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
145 lines • 4.46 kB
TypeScript
import React from "react";
import type { ConsciousnessFeatures } from "../layout/GlassContainer";
export interface GlassDialogProps extends ConsciousnessFeatures {
/**
* Whether the dialog is open
*/
open?: boolean;
/**
* Callback when dialog open state changes
*/
onOpenChange?: (open: boolean) => void;
/** Optional close callback for compatibility */
onClose?: () => void;
/**
* Dialog title
*/
title?: React.ReactNode;
/**
* Dialog description
*/
description?: React.ReactNode;
/**
* Dialog content
*/
children?: React.ReactNode;
/**
* Glass material variant
*/
material?: "glass" | "liquid";
/**
* Material properties for liquid glass
*/
materialProps?: {
ior?: number;
thickness?: number;
tint?: {
r: number;
g: number;
b: number;
a: number;
};
variant?: "regular" | "clear";
quality?: "ultra" | "high" | "balanced" | "efficient";
};
/**
* Dialog size
*/
size?: "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "full";
/**
* Dialog variant
*/
variant?: "default" | "centered" | "fullscreen";
/**
* Whether to close on backdrop click
*/
closeOnBackdropClick?: boolean;
/**
* Whether to close on escape key
*/
closeOnEscape?: boolean;
/**
* Whether to show close button
*/
showCloseButton?: boolean;
/**
* Animation preset
*/
animation?: "fade" | "scale" | "slide" | "flip";
/**
* Dialog footer content
*/
footer?: React.ReactNode;
/**
* Custom header content
*/
header?: React.ReactNode;
/**
* Whether dialog is modal (blocks interaction with background)
*/
modal?: boolean;
/**
* Custom backdrop blur
*/
backdropBlur?: boolean;
/**
* Dialog elevation
*/
elevation?: 0 | 1 | 2 | 3 | 4 | "float" | "modal";
/**
* Custom z-index
*/
zIndex?: number;
className?: string;
/**
* Custom className for dialog content
*/
contentClassName?: string;
}
/**
* GlassDialog component
* Modal dialog with glassmorphism styling and comprehensive functionality
*/
export declare const GlassDialog: React.ForwardRefExoticComponent<GlassDialogProps & React.RefAttributes<HTMLDivElement>>;
export interface DialogTriggerProps {
children: React.ReactNode;
asChild?: boolean;
}
export declare const DialogTrigger: React.ForwardRefExoticComponent<DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
export interface DialogContentProps extends GlassDialogProps {
}
export declare const DialogContent: React.ForwardRefExoticComponent<GlassDialogProps & React.RefAttributes<HTMLDivElement>>;
export interface DialogHeaderProps {
children: React.ReactNode;
className?: string;
}
export declare const DialogHeader: React.ForwardRefExoticComponent<DialogHeaderProps & React.RefAttributes<HTMLDivElement>>;
export interface DialogTitleProps {
children: React.ReactNode;
className?: string;
}
export declare const DialogTitle: React.ForwardRefExoticComponent<DialogTitleProps & React.RefAttributes<HTMLHeadingElement>>;
export interface DialogDescriptionProps {
children: React.ReactNode;
className?: string;
}
export declare const DialogDescription: React.ForwardRefExoticComponent<DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>>;
export interface DialogFooterProps {
children: React.ReactNode;
className?: string;
}
export declare const DialogFooter: React.ForwardRefExoticComponent<DialogFooterProps & React.RefAttributes<HTMLDivElement>>;
export declare const useDialog: (defaultOpen?: boolean) => {
open: boolean;
setOpen: React.Dispatch<React.SetStateAction<boolean>>;
openDialog: () => void;
closeDialog: () => void;
toggleDialog: () => void;
};
export declare const GlassPredictiveDialog: React.FC<GlassDialogProps>;
export declare const GlassAdaptiveDialog: React.FC<GlassDialogProps>;
export declare const GlassEyeTrackingDialog: React.FC<GlassDialogProps>;
export declare const GlassSpatialAudioDialog: React.FC<GlassDialogProps>;
export declare const GlassAchievementDialog: React.FC<GlassDialogProps>;
export declare const GlassConsciousnessDialog: React.FC<GlassDialogProps>;
//# sourceMappingURL=GlassDialog.d.ts.map