tharikida-ui
Version:
A modern, lightweight React UI component library with built-in theming, accessibility, and full TypeScript support. Create beautiful, responsive, and customizable web apps faster with ready-to-use components for any project.
53 lines (52 loc) • 2.72 kB
TypeScript
import React from "react";
/**
* `Navbar` is a navigation bar component supporting logo, links, right content, theming, and custom styles.
*
* @param {object} props - The properties to customize the `Navbar` component.
* @param {React.ReactNode} [props.logo] - Logo element to display at the start of the navbar.
* @param {{ label: string; href: string; active?: boolean }[]} [props.links] - Array of navigation links with label, href, and optional active state.
* @param {React.ReactNode} [props.rightContent] - Content to display at the end of the navbar (e.g., user menu).
* @param {React.CSSProperties} [props.styles] - Custom styles for the navbar container.
* @param {string} [props.className] - Additional className for the navbar container.
* @param {string} [props.primaryColor] - Primary color for the navbar background.
* @param {string} [props.textColor] - Text color for the navbar.
* @param {string} [props.backgroundColor] - Background color for the navbar (overrides primaryColor if provided).
* @param {string} [props.borderColor] - Border color for the navbar.
* @param {string} [props.borderWidth] - Border width for the navbar.
* @param {string} [props.borderStyle] - Border style for the navbar.
* @param {number} [props.cornerRadius] - Border radius for the navbar.
* @param {string} [props.fontFamily] - Font family for the navbar.
* @param {number} [props.fontSize] - Font size for the navbar.
* @param {string} [props.fontWeight] - Font weight for the navbar.
* @param {string} [props.transitionDuration] - Transition duration for the navbar.
* @param {number} [props.spacingfactor] - Spacing factor for the navbar.
* @param {string} [props.hoverColor] - Hover color for navbar links.
*
* @returns {JSX.Element} A styled navigation bar component.
*/
export interface NavbarProps {
logo?: React.ReactNode;
links?: {
label: string;
href: string;
active?: boolean;
}[];
rightContent?: React.ReactNode;
styles?: React.CSSProperties;
className?: string;
primaryColor?: string;
textColor?: string;
backgroundColor?: string;
borderColor?: string;
borderWidth?: string;
borderStyle?: string;
cornerRadius?: number;
fontFamily?: string;
fontSize?: number;
fontWeight?: string;
transitionDuration?: string;
spacingfactor?: number;
hoverColor?: string;
}
declare const Navbar: ({ logo, links, rightContent, styles, className, primaryColor, textColor, backgroundColor, borderColor, borderWidth, borderStyle, cornerRadius, fontFamily, fontSize, fontWeight, transitionDuration, spacingfactor, hoverColor, }: NavbarProps) => import("react/jsx-runtime").JSX.Element;
export default Navbar;