@rarcifa/cronos-design-system
Version:
A typescript react component library following the Cronos branding standards
64 lines (63 loc) • 1.82 kB
TypeScript
/// <reference types="react" />
export interface FooterProps {
/**
* The source URL for the logo image displayed in the Navbar.
*/
logo: string;
/**
* An array of objects representing the links in the Navbar. Each object should
* contain a `to` property representing the URL of the link and a `title` property
* representing the title or label of the link.
*/
links: {
to: string;
title: string;
}[];
/**
* Optional social widget to be rendered inside the footer links. These components
* can include additional elements such as social icons.
*/
socials?: MenuItem;
/**
* Optional children components to be rendered inside the Navbar. These components
* can include additional elements such as sub footers.
*/
children?: React.ReactNode;
}
export interface MenuItem {
/**
* The title or label of the menu.
*/
title: string;
/**
* The URL or routing path that the menu links to.
*/
to: string;
/**
* Optional array of MenuItem objects that represent a nested menu structure.
*/
menu?: MenuItem[];
/**
* Optional array of widgets for social menus.
*/
widgets?: {
to: string;
title: string;
icon: string;
}[];
}
export interface NavigationMenuProps {
/**
* Array of Menu objects to be rendered as part of the navigation.
*/
items: MenuItem[];
/**
* Optional social widget to be rendered inside the footer links. These components
* can include additional elements such as social icons.
*/
socials?: MenuItem;
/**
* A string containing the src url for the footer logo.
*/
logo: string;
}