@patreon/studio
Version:
Patreon Studio Design System
61 lines (60 loc) • 1.77 kB
TypeScript
import React from 'react';
import { Search } from './components/Items/components/Search';
import type { ItemProps } from './components/Items/types';
interface LogoProps {
onClick?: (e: React.MouseEvent<HTMLAnchorElement | HTMLButtonElement> | KeyboardEvent) => void;
type: 'mark' | 'wordmark';
url: string;
}
export interface TopNavProps {
/**
* @deprecated Any supplied children will be ignored
*/
children?: React.ReactNode;
/**
* List of items to render in the top right
* @deprecated for `itemsRight` prop
*/
items?: ItemProps[];
/**
* List of items to render in the top left, after the logo
*/
itemsLeft?: ItemProps[];
/**
* List of items to render in the top right
*/
itemsRight?: ItemProps[];
/**
* Node to render in the bottom on a new row
*/
bottomNode?: React.ReactNode;
/**
* If supplied, puts chosen logo in the top left
*/
logo: LogoProps;
/**
* If supplied, renders title string in center of nav
*/
title?: string;
/**
* Makes position static instead of fixed.
* Only to be used for examples and demos in which fixed positioning is a nuisance.
* @ignore
*/
notFixed?: boolean;
}
/** @deprecated `TopNav` should not be used in new development. */
export declare class TopNav extends React.Component<TopNavProps> {
static Search: typeof Search;
static defaultProps: {
logo: {
type: string;
url: string;
};
};
constructor(props: TopNavProps);
renderLogo: () => React.JSX.Element;
render(): React.JSX.Element;
}
export declare const TitleWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
export {};