import { type LinkContent, type RepeatableContent } from "@prismicio/types-internal/lib/content"; import { type Link } from "@prismicio/types-internal/lib/customtypes"; interface UseRepeatableLinkFieldProps { field: Link; content: RepeatableContent | undefined; onContentChange: (content: RepeatableContent) => void; } export declare function useRepeatableLinkField(props: UseRepeatableLinkFieldProps): { links: ({ key: string; } & { __TYPE__: "LinkContent"; value: ({ __TYPE__: "ImageLink"; } & ((({ kind: "image"; id: string; url: string; height: string; width: string; size: string; name: string; } & { date?: string | null | undefined; }) | { kind: "image"; }) & { text?: string | undefined; variant?: string | undefined; })) | ({ __TYPE__: "FileLink"; } & ((({ kind: "file"; id: string; url: string; name: string; size: string; } & { date?: string | null | undefined; }) | { kind: "file"; }) & { text?: string | undefined; variant?: string | undefined; })) | ({ __TYPE__: "DocumentLink"; } & (({ id: string; } | { kind: "document"; }) & { text?: string | undefined; variant?: string | undefined; })) | ({ __TYPE__: "ExternalLink"; } & ((({ url: string; } & { kind?: "web" | undefined; target?: string | null | undefined; preview?: { title?: string | undefined; } | null | undefined; }) | { kind: "web"; }) & { text?: string | undefined; variant?: string | undefined; })) | ({ __TYPE__: "MediaLink"; } & { kind: "media"; } & { text?: string | undefined; variant?: string | undefined; }) | ({ __TYPE__: "AnyLink"; } & { kind: "any"; } & { text?: string | undefined; variant?: string | undefined; }); })[]; updateLink: (linkContent: LinkContent | undefined, index: number) => void; updateLinks: (updatedLinks: LinkContent[]) => void; addLink: (index: number) => void; deleteLink: (index: number) => void; moveLink: (direction: "up" | "down", index: number) => void; }; export {};