forked from UKSOURCE/ipv6
43 lines
809 B
TypeScript
43 lines
809 B
TypeScript
export interface HeaderLogo {
|
|
image: string;
|
|
href: string;
|
|
}
|
|
|
|
export interface HeaderButton {
|
|
label: string;
|
|
href: string;
|
|
}
|
|
|
|
export interface HeaderMenuItem {
|
|
id: string;
|
|
title: string;
|
|
url: string;
|
|
type: 'internal' | 'external';
|
|
status: 'active' | 'inactive';
|
|
children: HeaderMenuItem[];
|
|
}
|
|
|
|
export interface HeaderData {
|
|
logo: HeaderLogo;
|
|
signInButton: HeaderButton;
|
|
ctaButton: HeaderButton;
|
|
status: 'active' | 'inactive';
|
|
}
|
|
|
|
export interface NavLink {
|
|
label: string;
|
|
href: string;
|
|
status?: 'active' | 'inactive';
|
|
children?: { label: string; href: string; status?: 'active' | 'inactive' }[];
|
|
}
|
|
|
|
export interface HeaderProps {
|
|
logo: HeaderLogo;
|
|
navLinks: NavLink[];
|
|
actions: {
|
|
signIn: HeaderButton;
|
|
cta: HeaderButton;
|
|
};
|
|
status: 'active' | 'inactive';
|
|
}
|