UNPKG

@prismicio/next

Version:

Helpers to integrate Prismic into Next.js apps

126 lines (125 loc) 4.77 kB
import { ComponentProps } from "react"; import Link from "next/link"; import { AsLinkAttrsConfig, LinkField, LinkResolverFunction, PrismicDocument } from "@prismicio/client"; export type PrismicNextLinkProps = Omit<ComponentProps<typeof Link>, "field" | "document" | "href" | "rel"> & { linkResolver?: LinkResolverFunction; rel?: string | AsLinkAttrsConfig["rel"]; } & ({ field: LinkField | null | undefined; document?: never; href?: never; } | { field?: never; document: PrismicDocument | null | undefined; href?: never; } | { field?: never; document?: never; href: ComponentProps<typeof Link>["href"]; }); export declare const PrismicNextLink: import("react").ForwardRefExoticComponent<(Omit<Omit<Omit<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, keyof { href: string | import("url").UrlObject; as?: string | import("url").UrlObject; replace?: boolean; scroll?: boolean; shallow?: boolean; passHref?: boolean; prefetch?: boolean | null; locale?: string | false; legacyBehavior?: boolean; onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>; onTouchStart?: React.TouchEventHandler<HTMLAnchorElement>; onClick?: React.MouseEventHandler<HTMLAnchorElement>; }> & { href: string | import("url").UrlObject; as?: string | import("url").UrlObject; replace?: boolean; scroll?: boolean; shallow?: boolean; passHref?: boolean; prefetch?: boolean | null; locale?: string | false; legacyBehavior?: boolean; onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>; onTouchStart?: React.TouchEventHandler<HTMLAnchorElement>; onClick?: React.MouseEventHandler<HTMLAnchorElement>; } & { children?: React.ReactNode | undefined; } & import("react").RefAttributes<HTMLAnchorElement>, "rel" | "field" | "document" | "href"> & { linkResolver?: LinkResolverFunction; rel?: string | AsLinkAttrsConfig["rel"]; } & { field: LinkField | null | undefined; document?: never; href?: never; }, "ref"> | Omit<Omit<Omit<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, keyof { href: string | import("url").UrlObject; as?: string | import("url").UrlObject; replace?: boolean; scroll?: boolean; shallow?: boolean; passHref?: boolean; prefetch?: boolean | null; locale?: string | false; legacyBehavior?: boolean; onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>; onTouchStart?: React.TouchEventHandler<HTMLAnchorElement>; onClick?: React.MouseEventHandler<HTMLAnchorElement>; }> & { href: string | import("url").UrlObject; as?: string | import("url").UrlObject; replace?: boolean; scroll?: boolean; shallow?: boolean; passHref?: boolean; prefetch?: boolean | null; locale?: string | false; legacyBehavior?: boolean; onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>; onTouchStart?: React.TouchEventHandler<HTMLAnchorElement>; onClick?: React.MouseEventHandler<HTMLAnchorElement>; } & { children?: React.ReactNode | undefined; } & import("react").RefAttributes<HTMLAnchorElement>, "rel" | "field" | "document" | "href"> & { linkResolver?: LinkResolverFunction; rel?: string | AsLinkAttrsConfig["rel"]; } & { field?: never; document: PrismicDocument | null | undefined; href?: never; }, "ref"> | Omit<Omit<Omit<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, keyof { href: string | import("url").UrlObject; as?: string | import("url").UrlObject; replace?: boolean; scroll?: boolean; shallow?: boolean; passHref?: boolean; prefetch?: boolean | null; locale?: string | false; legacyBehavior?: boolean; onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>; onTouchStart?: React.TouchEventHandler<HTMLAnchorElement>; onClick?: React.MouseEventHandler<HTMLAnchorElement>; }> & { href: string | import("url").UrlObject; as?: string | import("url").UrlObject; replace?: boolean; scroll?: boolean; shallow?: boolean; passHref?: boolean; prefetch?: boolean | null; locale?: string | false; legacyBehavior?: boolean; onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement>; onTouchStart?: React.TouchEventHandler<HTMLAnchorElement>; onClick?: React.MouseEventHandler<HTMLAnchorElement>; } & { children?: React.ReactNode | undefined; } & import("react").RefAttributes<HTMLAnchorElement>, "rel" | "field" | "document" | "href"> & { linkResolver?: LinkResolverFunction; rel?: string | AsLinkAttrsConfig["rel"]; } & { field?: never; document?: never; href: ComponentProps<typeof Link>["href"]; }, "ref">) & import("react").RefAttributes<HTMLAnchorElement>>;