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>>;
