import type { PropertyDefs } from "./support/Serializable.js";
import { SerializableBase } from "./support/Serializable.js";
/**
 * A hyperlink associated with a feature or layer.
 */
export interface HyperlinkProperties {
    /**
     * See {@link Hyperlink.url}.
     */
    url: string;
    /**
     * See {@link Hyperlink.text}.
     */
    text: string;
    /**
     * See {@link Hyperlink.iconUrl}.
     */
    iconUrl?: string;
    /**
     * See {@link Hyperlink.target}.
     */
    target?: string;
    /**
     * See {@link Hyperlink.tooltip}.
     */
    tooltip?: string;
}
declare const Hyperlink_base: (abstract new (_properties?: HyperlinkProperties) => SerializableBase<HyperlinkProperties>) & (abstract new (...args: any[]) => import("./support/observableUtils.js").ObservableMixin);
/**
 * A hyperlink associated with a feature or layer.
 */
export declare class Hyperlink extends Hyperlink_base {
    /**
     * The URL to link to.
     */
    get url(): string;
    set url(url: string);
    /**
     * The human-readable text of the link.
     */
    get text(): string;
    set text(text: string);
    /**
     * An optional URL to an icon image that will be displayed with the link.
     */
    get iconUrl(): string;
    set iconUrl(iconUrl: string);
    /**
     * The target for the link (e.g. "_blank").
     */
    get target(): string;
    set target(target: string);
    /**
     * A tooltip that will appear when a user hovers over the link.
     */
    get tooltip(): string;
    set tooltip(tooltip: string);
    private _url;
    private _text;
    private _iconUrl;
    private _target;
    private _tooltip;
    /**
     * Creates a new Hyperlink instance with the given properties.
     *
     * @param properties The properties to set.
     */
    constructor(properties: HyperlinkProperties);
    /**
     * Returns a list of fields references contained in the hyperlink
     * properties.
     */
    getReferencedFields(): string[];
    protected _getSerializableProperties(): PropertyDefs<HyperlinkProperties>;
}
export {};
