import { LogoProps, LogomarkHandle, LogomarkProps, WordmarkProps } from "./types.mjs"; import { ForwardRefExoticComponent, RefAttributes } from "react"; //#region src/logo/logo.d.ts /** The {@link Logo} component, with `Logomark` / `Wordmark` shorthands attached. */ interface LogoComponent extends ForwardRefExoticComponent> { /** * The hedgehog icon on its own. Static by default, but it can also **jump** like the * logomark in the PostHog app — set `jumpOnClick` and/or `autoJumpMs`, or drive it yourself * through the {@link LogomarkHandle} on its `ref`. See {@link LogomarkProps}. * * @example * ```tsx * // static icon * * // click me! (successive clicks jump higher) * // jumps every 3s * * const mark = useRef(null) * // ...then mark.current?.jump() whenever * ``` */ Logomark: ForwardRefExoticComponent>; /** * The "PostHog" wordmark only — shorthand for ``. Always mono; * tint it with `color`. See {@link WordmarkProps}. * * @example * ```tsx * * * ``` */ Wordmark: ForwardRefExoticComponent>; } /** * The PostHog logo — one component for every lockup and color treatment. * * Pick the **form** with {@link LogoProps.layout | `layout`} (`landscape` · `stacked` · * `logomark` · `wordmark`) and the **color treatment** with {@link LogoProps.variant | * `variant`} (`gradient` · `print` · `mono`). For `mono`, set {@link LogoProps.color | * `color`} to any CSS color — it defaults to `currentColor`, so the mark inherits the * surrounding text color. Renders an inline ``: it scales crisply, takes every native * `` prop (`className`, `style`, `onClick`, …), and forwards `ref` to the element. * * Sizing: pass `size` (a number of px or any CSS length) to set the width — height follows * the lockup's aspect ratio. Accessibility: pass `title` to label it for assistive tech * (`role="img"` + ``); without one it renders as decorative (`aria-hidden`). * * Shorthands {@link LogoComponent.Logomark | `Logo.Logomark`} and * {@link LogoComponent.Wordmark | `Logo.Wordmark`} render just the icon or just the wordmark. * * @example * ```tsx * import { Logo } from "@posthog/brand/logo" * * // landscape lockup, full gradient (defaults) * // 160px wide, labelled * // single color (e.g. on a dark background) * // inherits the ambient CSS `color` * // 4-color / CMYK, portrait lockup * // the hedgehog icon only * // the "PostHog" wordmark only * ``` * * @see {@link LogoProps} for the full prop reference. */ declare const Logo: LogoComponent; //#endregion export { Logo, LogoComponent };