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.09 kB
TypeScript
import type { Snippet } from 'svelte';
import type { HTMLAnchorAttributes, HTMLAttributes, HTMLButtonAttributes } from 'svelte/elements';
interface ButtonProps extends HTMLButtonAttributes {
selected?: boolean;
start?: Snippet;
end?: Snippet;
variant: 'button';
supportingText?: Snippet;
softFocus?: boolean;
lazy?: boolean;
}
interface AnchorProps extends HTMLAnchorAttributes {
selected?: boolean;
start?: Snippet;
end?: Snippet;
disabled?: boolean;
variant: 'link';
supportingText?: Snippet;
softFocus?: boolean;
lazy?: boolean;
}
interface TextProps extends HTMLAttributes<HTMLDivElement> {
selected?: boolean;
start?: Snippet;
end?: Snippet;
disabled?: boolean;
variant?: 'text';
supportingText?: Snippet;
softFocus?: boolean;
lazy?: boolean;
}
export type ItemProps = ButtonProps | AnchorProps | TextProps;
export type ListItemProps = ButtonProps | AnchorProps | TextProps;
export interface ListProps extends HTMLAttributes<HTMLUListElement> {
element?: HTMLUListElement;
}
export {};