noph-ui
Version:
Noph UI is a modern, powerful UI library for Svelte 5, fully aligned with the Material 3 guidelines. Build stunning, consistent user interfaces with the efficiency and flexibility of Svelte and Google’s Material Design framework.
38 lines (37 loc) • 1.19 kB
TypeScript
import type { Snippet } from 'svelte';
import type { HTMLAnchorAttributes, HTMLAttributes, HTMLButtonAttributes } from 'svelte/elements';
interface TextProps extends HTMLAttributes<HTMLDivElement> {
variant?: 'elevated' | 'filled' | 'outlined';
disabled?: boolean;
image?: string | null;
element?: HTMLElement;
headline?: string | null;
subhead?: string | null;
supportingText?: string | null;
action?: Snippet<[]>;
type: 'text';
}
interface ButtonProps extends HTMLButtonAttributes {
variant?: 'elevated' | 'filled' | 'outlined';
disabled?: boolean;
image?: string | null;
element?: HTMLElement;
headline?: string | null;
subhead?: string | null;
supportingText?: string | null;
action?: Snippet<[]>;
type: 'button';
}
interface AnchorProps extends HTMLAnchorAttributes {
variant?: 'elevated' | 'filled' | 'outlined';
disabled?: boolean;
image?: string | null;
element?: HTMLElement;
headline?: string | null;
subhead?: string | null;
supportingText?: string | null;
action?: Snippet<[]>;
type: 'link';
}
export type CardProps = TextProps | ButtonProps | AnchorProps;
export {};