import { type ButtonColor } from "./button"; import { type IconName } from "./icon"; import { type StyleProps } from "./style_props"; export interface ReachButtonProps extends StyleProps { /** The act's own word — "Call", "Message", "Reply". */ label: string; /** The verb and who it reaches, where buttons differ only by that — "Call Owen Hale". */ accessibilityLabel?: string; /** `tel:`, `mailto:`, a chat link, a thread address. A web address opens beside the page, other schemes * go to the device's handler; `null` has nowhere to go, so the press is the return. */ href: string | null; icon?: IconName; /** `secondary` by default: a leaving verb is rarely a commit. */ color?: ButtonColor; /** Somebody asked not to be reached this way; the verb stays so the reason is found where the reader * reaches for it. */ refused?: string | null; /** The reader is back (or the channel opened in place): the host asks what happened. Absent, the press * only opens the channel. */ onReturn?: () => void; /** The glyph alone, the verb its name and tooltip, where the word has no width (a phone row beside its * ⋯); only for a verb with a glyph. */ glyphOnly?: boolean; disabled?: boolean; testID?: string; } /** An act leaving for another channel that knows when the reader returns. Pressing arms it and opens the * channel; losing focus or visibility is leaving, regaining either is returning, when the host asks how * it went. A press going nowhere returns after {@link REACH_GRACE_MS}. A refused verb is pressable and * states the refusal. */ export declare function ReachButton(props: ReachButtonProps): import("react").JSX.Element;