import { ComponentPropsWithoutRef, FocusEventHandler, MouseEventHandler, ReactElement, Ref } from 'react'; import { BaseProps, Brightness, Size } from '@skatteetaten/ds-core-utils'; type RequiredIconButtonHTMLAttributes = Pick, 'accessKey' | 'disabled' | 'type' | 'onBlur' | 'onClick' | 'onFocus'>; type IconButtonHTMLAttributes = Partial; interface IconButtonPropsHTMLAttributes extends IconButtonHTMLAttributes { title: string; ariaDescribedby?: string; ariaExpanded?: boolean; onBlur?: FocusEventHandler; onClick?: MouseEventHandler; onFocus?: FocusEventHandler; } export type IconButtonBrightness = Extract; export interface IconButtonProps extends IconButtonPropsHTMLAttributes, BaseProps { ref?: Ref; /** Om knappen har en ramme/sirkel. */ isOutlined?: boolean; /** Størrelse på knappen. extraSmall tas bort i neste major. */ size?: Extract; /** * HTML-path node. Forhåndsdefinerte paths kan importeres fra ds-icons pakke. * Alternativt kan custom path sendes. */ svgPath: ReactElement; /** Om knappen skal inneholde Spinner. */ hasSpinner?: boolean; /** * Overskriver default tekst som leses opp av skjermleser når Spinner snurrer * i knappen. */ spinnerTitle?: string; /** Justerer farge slik at komponenten kan brukes på mørk bakgrunn. */ brightness?: IconButtonBrightness; } export {};