@norges-domstoler/dds-components 0.0.0-dev-20230925154113

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/README.md +109 -0
  2. package/dist/assets/fonts/IBMPlexMono-Light.woff +0 -0
  3. package/dist/assets/fonts/IBMPlexMono-Light.woff2 +0 -0
  4. package/dist/assets/fonts/IBMPlexMono-Regular.woff +0 -0
  5. package/dist/assets/fonts/IBMPlexMono-Regular.woff2 +0 -0
  6. package/dist/assets/fonts/IBMPlexMono-SemiBold.woff +0 -0
  7. package/dist/assets/fonts/IBMPlexMono-SemiBold.woff2 +0 -0
  8. package/dist/assets/fonts/IBMPlexSans-Italic.woff +0 -0
  9. package/dist/assets/fonts/IBMPlexSans-Italic.woff2 +0 -0
  10. package/dist/assets/fonts/IBMPlexSans-Light.woff +0 -0
  11. package/dist/assets/fonts/IBMPlexSans-Light.woff2 +0 -0
  12. package/dist/assets/fonts/IBMPlexSans-LightItalic.woff +0 -0
  13. package/dist/assets/fonts/IBMPlexSans-LightItalic.woff2 +0 -0
  14. package/dist/assets/fonts/IBMPlexSans-Regular.woff +0 -0
  15. package/dist/assets/fonts/IBMPlexSans-Regular.woff2 +0 -0
  16. package/dist/assets/fonts/IBMPlexSans-SemiBold.woff +0 -0
  17. package/dist/assets/fonts/IBMPlexSans-SemiBold.woff2 +0 -0
  18. package/dist/assets/fonts/IBMPlexSans-SemiBoldItalic.woff +0 -0
  19. package/dist/assets/fonts/IBMPlexSans-SemiBoldItalic.woff2 +0 -0
  20. package/dist/calendar_today-PMIB5OWO.svg +1 -0
  21. package/dist/index.d.mts +1761 -0
  22. package/dist/index.d.ts +1761 -0
  23. package/dist/index.js +10573 -0
  24. package/dist/index.mjs +11051 -0
  25. package/dist/jordskifterett_bullet1-JEURT2QQ.svg +3 -0
  26. package/dist/lagmannsrett_bullet2-UGFNA6RB.svg +3 -0
  27. package/dist/styles/fontStyles.css +90 -0
  28. package/dist/styles/selection.css +6 -0
  29. package/dist/tingrett_bullet3-KRK5OB4E.svg +3 -0
  30. package/package.json +107 -0
@@ -0,0 +1,1761 @@
1
+ import * as _norges_domstoler_dds_core from '@norges-domstoler/dds-core';
2
+ import { BaseComponentProps, Placement, As, PropsOf, BaseComponentPropsWithChildren, Direction as Direction$1, WithRequiredIf, TextColor, BreakpointBasedProps, ExtractStrict } from '@norges-domstoler/dds-core';
3
+ export { BaseComponentProps, BaseComponentPropsWithChildren, BreakpointBasedProps, Placement, ScreenSize, ScreenSizeLiteral, getBaseHTMLProps, getLiteralScreenSize, isKeyboardEvent, useCombinedRef, useFloatPosition, useFocusTrap, useMountTransition, useOnClickOutside, useOnKeyDown, useReturnFocusOnBlur, useRoveFocus, useScreenSize } from '@norges-domstoler/dds-core';
4
+ import * as _norges_domstoler_dds_form from '@norges-domstoler/dds-form';
5
+ import { InputSize, InputProps, CommonInputProps } from '@norges-domstoler/dds-form';
6
+ export * from '@norges-domstoler/dds-form';
7
+ import * as _norges_domstoler_dds_icons from '@norges-domstoler/dds-icons';
8
+ import { SvgIcon } from '@norges-domstoler/dds-icons';
9
+ export * from '@norges-domstoler/dds-icons';
10
+ import { TypographyBodyType, StaticTypographyType } from '@norges-domstoler/dds-typography';
11
+ export * from '@norges-domstoler/dds-typography';
12
+ import * as react_jsx_runtime from 'react/jsx-runtime';
13
+ import * as react from 'react';
14
+ import react__default, { ButtonHTMLAttributes, AnchorHTMLAttributes, RefObject, ReactNode, PropsWithChildren, ReactElement, MouseEventHandler, InputHTMLAttributes, ChangeEvent, HTMLAttributes, Ref, MouseEvent as MouseEvent$1, TdHTMLAttributes, ThHTMLAttributes, Dispatch, SetStateAction, ForwardRefExoticComponent, TextareaHTMLAttributes } from 'react';
15
+ import { Environment } from '@norges-domstoler/development-utils';
16
+ import { Property, StandardProperties } from 'csstype';
17
+ import { OptionProps, GroupBase, SingleValueProps, Props, SelectInstance } from 'react-select';
18
+ import * as styled_components from 'styled-components';
19
+
20
+ type EmbeteType = 'jordskifterett' | 'tingrett' | 'lagmannsrett' | 'høyesterett';
21
+
22
+ type OverflowMenuItemBase = {
23
+ title: string;
24
+ icon?: SvgIcon;
25
+ };
26
+ type OverflowMenuButtonItem = OverflowMenuItemBase & ButtonHTMLAttributes<HTMLButtonElement>;
27
+ type OverflowMenuLinkItem = OverflowMenuItemBase & AnchorHTMLAttributes<HTMLAnchorElement>;
28
+ type OverflowMenuContextItem = OverflowMenuButtonItem | OverflowMenuLinkItem;
29
+ type OverflowMenuNavItem = OverflowMenuLinkItem;
30
+ type UserProps = {
31
+ name: string;
32
+ href?: string;
33
+ } & (AnchorHTMLAttributes<HTMLAnchorElement> | ButtonHTMLAttributes<HTMLButtonElement>);
34
+ type OverflowMenuProps = BaseComponentProps<HTMLDivElement, {
35
+ /**Lenker eller knapper som skal vises i menyen. Støtter ikon i tillegg til tekst. */
36
+ items?: OverflowMenuContextItem[];
37
+ /**Eget element for brukernavn, kan være interaktivt eller statisk. Ligger alltid på toppen av menyen. */
38
+ userProps?: UserProps;
39
+ /**Navigasjonslenker, brukes hvis navigasjonen skal ligge i menyen (f.eks. ved liten skjerm o.l.). */
40
+ navItems?: OverflowMenuNavItem[];
41
+ /**Spesifiserer om menyen skal vises. **OBS!** nødvendig kun hvis `<OverflowMenuGroup />` ikke brukes. */
42
+ isOpen?: boolean;
43
+ /**Callback for å lukke menyen. **OBS!** nødvendig kun hvis `<OverflowMenuGroup />` ikke brukes. */
44
+ onClose?: () => void;
45
+ /**Callback for å toggle menyen. **OBS!** nødvendig kun hvis `<OverflowMenuGroup />` ikke brukes. */
46
+ onToggle?: () => void;
47
+ /**Ref til elementet som styrer menyen. **OBS!** nødvendig kun hvis ``<OverflowMenuGroup />` ikke brukes. */
48
+ anchorRef?: RefObject<HTMLButtonElement>;
49
+ /**Plassering av menyen i forhold til anchor-elementet. */
50
+ placement?: Placement;
51
+ /**Avstand fra anchor-elementet i px. */
52
+ offset?: number;
53
+ }>;
54
+
55
+ type ContainerProps = {
56
+ isOpen: boolean;
57
+ };
58
+ declare const Container: styled_components.StyledComponent<"div", any, ContainerProps, never>;
59
+ declare const OverflowMenuList: styled_components.StyledComponent<"ul", any, {}, never>;
60
+ declare const OverflowMenu: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
61
+ items?: OverflowMenuContextItem[] | undefined;
62
+ userProps?: ({
63
+ name: string;
64
+ href?: string | undefined;
65
+ } & (react.AnchorHTMLAttributes<HTMLAnchorElement> | react.ButtonHTMLAttributes<HTMLButtonElement>)) | undefined;
66
+ navItems?: OverflowMenuLinkItem[] | undefined;
67
+ isOpen?: boolean | undefined;
68
+ onClose?: (() => void) | undefined;
69
+ onToggle?: (() => void) | undefined;
70
+ anchorRef?: react.RefObject<HTMLButtonElement> | undefined;
71
+ placement?: _norges_domstoler_dds_core.Placement | undefined;
72
+ offset?: number | undefined;
73
+ } & {
74
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
75
+ } & react.RefAttributes<HTMLDivElement>>;
76
+
77
+ type OverflowMenuGroupProps = {
78
+ /**Ekstra logikk som kjøres når `<OverflowMenu />` åpnes og lukkes. */
79
+ onToggle?: () => void;
80
+ /**Ekstra logikk som kjøres når `<OverflowMenu />` åpnes. */
81
+ onOpen?: () => void;
82
+ /**Ekstra logikk som kjøres når `<OverflowMenu />` lukkes. */
83
+ onClose?: () => void;
84
+ /**Barn, anchor-elementet som første og `<OverflowMenu />` som andre. */
85
+ children: ReactNode;
86
+ /**Custom id for `<OverflowMenu />`. */
87
+ overflowMenuId?: string;
88
+ };
89
+ declare const OverflowMenuGroup: {
90
+ ({ children, onClose, onToggle, onOpen, overflowMenuId, }: OverflowMenuGroupProps): react_jsx_runtime.JSX.Element;
91
+ displayName: string;
92
+ };
93
+
94
+ type User = {
95
+ /**Brukerens fulle navn (for- og etternavn). */
96
+ name: string;
97
+ /**Det aktive embetet til brukeren. */
98
+ embete: Embete;
99
+ };
100
+ type Embete = {
101
+ /**Navnet på embetet. */
102
+ name: string;
103
+ /**Hvilken instans embetet er. */
104
+ type: EmbeteType;
105
+ };
106
+
107
+ type AppShellProps = PropsWithChildren<{
108
+ /**
109
+ * Versjon på appen på formatet 0.0.0
110
+ */
111
+ version?: string;
112
+ navigation: AppShellNavigationProps;
113
+ /**
114
+ * Den innloggede brukeren.
115
+ */
116
+ user: User;
117
+ /**
118
+ * Menyvalg som skal vises i OverflowMenu knyttet til "bruker"-knappen.
119
+ */
120
+ userMenuItems?: OverflowMenuProps['items'];
121
+ /**
122
+ * `environment` brukes for å vise en banner øverst i appen som viser hvilket miljø du er i.
123
+ * Når environment er undefined eller `"PROD"` så vises ikke banneret.
124
+ */
125
+ environment?: Environment;
126
+ }>;
127
+ type AppShellNavigationProps = {
128
+ /**
129
+ * Interne lenker i navigasjonen.
130
+ */
131
+ internal?: ReactElement[];
132
+ /**
133
+ * Eksterne lenker i navigasjonen.
134
+ */
135
+ external?: ReactElement[];
136
+ };
137
+ declare const AppShell$1: {
138
+ ({ children, version, navigation: { internal, external }, user, userMenuItems, environment, }: AppShellProps): react_jsx_runtime.JSX.Element;
139
+ displayName: string;
140
+ };
141
+
142
+ type BaseNavigationItemProps = ({
143
+ icon: SvgIcon;
144
+ active?: boolean;
145
+ external?: undefined | false;
146
+ } | {
147
+ external: true;
148
+ active?: undefined | false;
149
+ icon?: undefined;
150
+ }) & {
151
+ onClick?: MouseEventHandler;
152
+ };
153
+ type NavigationItemProps<T extends As = 'a'> = PropsOf<T> & BaseNavigationItemProps;
154
+ declare const NavigationItem: {
155
+ <T extends As = "a">({ as: _as, active, icon, external, children, onClick: propOnClick, ...rest }: NavigationItemProps<T>): react_jsx_runtime.JSX.Element;
156
+ displayName: string;
157
+ };
158
+
159
+ type CompoundAppShell = typeof AppShell$1 & {
160
+ NavItem: typeof NavigationItem;
161
+ };
162
+ declare const AppShell: CompoundAppShell;
163
+
164
+ declare const RadioButton: react.ForwardRefExoticComponent<Pick<Omit<react.InputHTMLAttributes<HTMLInputElement>, "name" | "aria-describedby" | "onChange" | "value" | "checked" | "readOnly" | "required">, "className" | "id"> & {
165
+ label?: string | undefined;
166
+ disabled?: boolean | undefined;
167
+ error?: boolean | undefined;
168
+ } & {
169
+ name?: string | undefined;
170
+ 'aria-describedby'?: string | undefined;
171
+ onChange?: react.ChangeEventHandler<HTMLInputElement> | undefined;
172
+ value?: string | number | readonly string[] | undefined;
173
+ checked?: boolean | undefined;
174
+ readOnly?: boolean | undefined;
175
+ required?: boolean | undefined;
176
+ } & {
177
+ children?: react.ReactNode;
178
+ } & {
179
+ htmlProps?: Omit<react.InputHTMLAttributes<HTMLInputElement>, "name" | "aria-describedby" | "onChange" | "value" | "checked" | "readOnly" | "required"> | undefined;
180
+ } & react.RefAttributes<HTMLInputElement>>;
181
+
182
+ type PickedInputHTMLAttributes$1 = Pick<InputHTMLAttributes<HTMLInputElement>, 'name' | 'readOnly' | 'checked' | 'value' | 'required' | 'onChange' | 'aria-describedby'>;
183
+ type RadioButtonProps = BaseComponentPropsWithChildren<HTMLInputElement, {
184
+ /**Ledetekst for alternativet. */
185
+ label?: string;
186
+ /**Spesifiserer om input er disabled. */
187
+ disabled?: boolean;
188
+ /**Indikerer valideringsfeil. Påvirker styling. */
189
+ error?: boolean;
190
+ } & PickedInputHTMLAttributes$1, Omit<InputHTMLAttributes<HTMLInputElement>, keyof PickedInputHTMLAttributes$1>>;
191
+
192
+ type RadioButtonGroupProps<T extends string | number> = BaseComponentPropsWithChildren<HTMLDivElement, {
193
+ /** Gir alle barna `name` prop.*/
194
+ name?: string;
195
+ /**Ledetekst for hele gruppen. */
196
+ label?: string;
197
+ /**Funksjonen for onChange-event for barna. */
198
+ onChange?: (event: ChangeEvent<HTMLInputElement>, value: T | undefined) => void;
199
+ /**Legger en markør (*) bak label som indikerer at input er påkrevd. Gjør alle barna påkrevd ved å gi dem `required` prop. */
200
+ required?: boolean;
201
+ /**Meldingen som vises ved valideringsfeil. Gir alle barna error prop. */
202
+ errorMessage?: string;
203
+ /**Hjelpetekst for gruppen. */
204
+ tip?: string;
205
+ /**Gir alle barna `disabled` prop. */
206
+ disabled?: boolean;
207
+ /**Gir alle barna `readOnly` prop */
208
+ readOnly?: boolean;
209
+ /**Retningen radioknappene skal gjengis i. */
210
+ direction?: Direction$1;
211
+ /**Default verdi - en `<RadioButton />` blir forhåndsvalgt. **OBS!** brukes kun når brukeren ikke skal fylle ut selv. */
212
+ value?: T | undefined;
213
+ /**custom id for for gruppen, knytter `label` til gruppen via `aria-label`. */
214
+ groupId?: string;
215
+ }, Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>>;
216
+ declare const RadioButtonGroup: <T extends string | number = string>(props: Pick<Omit<HTMLAttributes<HTMLDivElement>, "onChange">, "className" | "id"> & {
217
+ /** Gir alle barna `name` prop.*/
218
+ name?: string | undefined;
219
+ /**Ledetekst for hele gruppen. */
220
+ label?: string | undefined;
221
+ /**Funksjonen for onChange-event for barna. */
222
+ onChange?: ((event: ChangeEvent<HTMLInputElement>, value: T | undefined) => void) | undefined;
223
+ /**Legger en markør (*) bak label som indikerer at input er påkrevd. Gjør alle barna påkrevd ved å gi dem `required` prop. */
224
+ required?: boolean | undefined;
225
+ /**Meldingen som vises ved valideringsfeil. Gir alle barna error prop. */
226
+ errorMessage?: string | undefined;
227
+ /**Hjelpetekst for gruppen. */
228
+ tip?: string | undefined;
229
+ /**Gir alle barna `disabled` prop. */
230
+ disabled?: boolean | undefined;
231
+ /**Gir alle barna `readOnly` prop */
232
+ readOnly?: boolean | undefined;
233
+ /**Retningen radioknappene skal gjengis i. */
234
+ direction?: Direction$1 | undefined;
235
+ /**Default verdi - en `<RadioButton />` blir forhåndsvalgt. **OBS!** brukes kun når brukeren ikke skal fylle ut selv. */
236
+ value?: T | undefined;
237
+ /**custom id for for gruppen, knytter `label` til gruppen via `aria-label`. */
238
+ groupId?: string | undefined;
239
+ } & {
240
+ children?: react.ReactNode;
241
+ } & {
242
+ htmlProps?: Omit<HTMLAttributes<HTMLDivElement>, "onChange"> | undefined;
243
+ } & {
244
+ ref?: Ref<HTMLDivElement> | undefined;
245
+ }) => ReactElement;
246
+
247
+ type CheckboxPickedHTMLAttributes = Pick<InputHTMLAttributes<HTMLInputElement>, 'aria-describedby' | 'name' | 'checked' | 'defaultChecked' | 'value' | 'defaultValue' | 'onChange' | 'onBlur'>;
248
+ type CheckboxProps = BaseComponentProps<HTMLInputElement, {
249
+ /** Ledetekst for inputelementet. */
250
+ label?: string;
251
+ /**Indikererr ugyldig input, endrer styling. */
252
+ error?: boolean;
253
+ /** Setter disabled-tilstand for inputelementet. */
254
+ disabled?: boolean;
255
+ /**Inputelementet blir readOnly - den kan ikke interageres med. Brukes til å hente input brukeren har fylt ut andre steder. */
256
+ readOnly?: boolean;
257
+ /**Brukes ved nøstet struktur der alle Checkbox som hører til en gruppe kan bli valgt ved å trykke på en forelder Checkbox. Hvis enkelte <Checkbox /> blir valgt men ikke alle skal forelder <Checkbox /> få tilstanden indeterminate - verken checked eller ikke. */
258
+ indeterminate?: boolean;
259
+ } & CheckboxPickedHTMLAttributes, Omit<InputHTMLAttributes<HTMLInputElement>, keyof CheckboxPickedHTMLAttributes>>;
260
+
261
+ declare const Checkbox: react.ForwardRefExoticComponent<Pick<Omit<react.InputHTMLAttributes<HTMLInputElement>, "name" | "aria-describedby" | "onBlur" | "onChange" | "defaultChecked" | "defaultValue" | "value" | "checked">, "className" | "id"> & {
262
+ label?: string | undefined;
263
+ error?: boolean | undefined;
264
+ disabled?: boolean | undefined;
265
+ readOnly?: boolean | undefined;
266
+ indeterminate?: boolean | undefined;
267
+ } & CheckboxPickedHTMLAttributes & {
268
+ htmlProps?: Omit<react.InputHTMLAttributes<HTMLInputElement>, "name" | "aria-describedby" | "onBlur" | "onChange" | "defaultChecked" | "defaultValue" | "value" | "checked"> | undefined;
269
+ } & react.RefAttributes<HTMLInputElement>>;
270
+
271
+ type CheckboxGroupProps = BaseComponentPropsWithChildren<HTMLDivElement, {
272
+ /**Ledetekst for gruppen. */
273
+ label?: string;
274
+ /**Retningen barna gjengis i. */
275
+ direction?: Direction$1;
276
+ /**Custom id for for gruppen, knytter ledetekst til gruppen via `aria-label`. */
277
+ groupId?: string;
278
+ /**Meldingen som vises ved valideringsfeil. Sender error-tilstand til barna når det finnes og setter `aria-describedby` for barna. */
279
+ errorMessage?: string;
280
+ tip?: string;
281
+ /**Indikerer at det er påkrevd å velge minst ett alternativ. Innebærer visuell endring. **OBS!** `required` må i tillegg gis til `<Checkbox />` manuelt. */
282
+ required?: boolean;
283
+ }>;
284
+ declare const CheckboxGroup: {
285
+ (props: CheckboxGroupProps): react_jsx_runtime.JSX.Element;
286
+ displayName: string;
287
+ };
288
+
289
+ type ButtonPurpose = 'primary' | 'secondary' | 'danger';
290
+ type ButtonSize = 'tiny' | 'small' | 'medium' | 'large';
291
+ type ButtonAppearance = 'filled' | 'ghost' | 'rounded' | 'borderless';
292
+ type IconPosition = 'left' | 'right';
293
+ type PickedHTMLAttributes$1 = Pick<ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'onFocus' | 'onBlur' | 'type'>;
294
+ type ButtonProps$1 = BaseComponentProps<HTMLButtonElement, {
295
+ /**Størrelsen på knappen. */
296
+ size?: ButtonSize;
297
+ /**Tekst i knappen. */
298
+ label?: string | ReactElement;
299
+ /**Bestemmer farger basert på formål. */
300
+ purpose?: ButtonPurpose;
301
+ /** Posisjonen til ikonet i forhold til teksten.*/
302
+ iconPosition?: IconPosition;
303
+ /**Bestemmer utseende på knappen, bl.a. bakgrunn, border radius og skygger. */
304
+ appearance?: ButtonAppearance;
305
+ /**Indikerer en loading-knapp. */
306
+ loading?: boolean;
307
+ /**Tooltip som vises ved loading. */
308
+ loadingTooltip?: string;
309
+ /**Ikonet som ligger i knappen. */
310
+ icon?: SvgIcon;
311
+ /**Knapp med full bredde. */
312
+ fullWidth?: boolean;
313
+ /**URL for knapper som skal brukes som lenke. Knappen blir til et `<a>`-element. */
314
+ href?: string;
315
+ /**Nativt target-attributt som kan spesifiseres når knappen er et `<a>`-element. */
316
+ target?: string;
317
+ } & PickedHTMLAttributes$1, Omit<ButtonHTMLAttributes<HTMLButtonElement>, keyof PickedHTMLAttributes$1>>;
318
+
319
+ declare const Button: react.ForwardRefExoticComponent<Pick<Omit<react.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onFocus" | "onBlur" | "onClick">, "className" | "id"> & {
320
+ size?: ButtonSize | undefined;
321
+ label?: string | react.ReactElement<any, string | react.JSXElementConstructor<any>> | undefined;
322
+ purpose?: ButtonPurpose | undefined;
323
+ iconPosition?: IconPosition | undefined;
324
+ appearance?: ButtonAppearance | undefined;
325
+ loading?: boolean | undefined;
326
+ loadingTooltip?: string | undefined;
327
+ icon?: _norges_domstoler_dds_icons.SvgIcon | undefined;
328
+ fullWidth?: boolean | undefined;
329
+ href?: string | undefined;
330
+ target?: string | undefined;
331
+ } & {
332
+ type?: "button" | "reset" | "submit" | undefined;
333
+ onFocus?: react.FocusEventHandler<HTMLButtonElement> | undefined;
334
+ onBlur?: react.FocusEventHandler<HTMLButtonElement> | undefined;
335
+ onClick?: react.MouseEventHandler<HTMLButtonElement> | undefined;
336
+ } & {
337
+ htmlProps?: Omit<react.ButtonHTMLAttributes<HTMLButtonElement>, "type" | "onFocus" | "onBlur" | "onClick"> | undefined;
338
+ } & react.RefAttributes<HTMLButtonElement>>;
339
+
340
+ declare const TextInput: react__default.ForwardRefExoticComponent<_norges_domstoler_dds_form.CommonInputProps & {
341
+ componentSize?: InputSize | undefined;
342
+ } & react__default.InputHTMLAttributes<HTMLInputElement> & {
343
+ withCharacterCounter?: boolean | undefined;
344
+ icon?: _norges_domstoler_dds_icons.SvgIcon | undefined;
345
+ prefix?: string | undefined;
346
+ suffix?: string | undefined;
347
+ } & react__default.RefAttributes<HTMLInputElement>>;
348
+
349
+ type TextInputProps = InputProps & {
350
+ /** Spesifiserer om tegntelleren skal vises ved bruk av `maxLength` attributt. */
351
+ withCharacterCounter?: boolean;
352
+ /** Ikonet som vises i komponenten. */
353
+ icon?: SvgIcon;
354
+ /**
355
+ * Prefiks som vises før inputfeltet.
356
+ * OBS! Prefiks leses ikke av skjermleser og skal derfor ikke brukes som en erstatter
357
+ * for en beskrivende label. */
358
+ prefix?: string;
359
+ /**
360
+ * Suffiks som vises etter inputfeltet.
361
+ * OBS! Suffiks leses ikke av skjermleser og skal derfor ikke brukes som en erstatter
362
+ * for en beskrivende label. */
363
+ suffix?: string;
364
+ };
365
+ type TextAffixProps = {
366
+ readOnly?: boolean;
367
+ };
368
+
369
+ type SelectOption<TValue = unknown> = {
370
+ label: string | number;
371
+ value: TValue;
372
+ };
373
+ declare const createSelectOptions: <TValue extends string | number>(...args: TValue[]) => SelectOption<TValue>[];
374
+ type WrappedReactSelectProps<TOption extends Record<string, unknown>, IsMulti extends boolean, Group extends GroupBase<TOption>> = WithRequiredIf<TOption extends SelectOption ? false : true, Props<TOption, IsMulti, Group>, 'getOptionLabel' | 'getOptionValue'>;
375
+ type SelectProps<TOption extends Record<string, unknown>, IsMulti extends boolean> = {
376
+ /**Ledetekst for nedtrekkslisten. */
377
+ label?: string;
378
+ /**Størrelsen på komponenten. */
379
+ componentSize?: InputSize;
380
+ /**Ikonet som vises i komponenten. */
381
+ icon?: SvgIcon;
382
+ /**Nedtrekkslisten blir disabled og får readOnly styling. */
383
+ readOnly?: boolean;
384
+ /**Meldingen som vises ved valideringsfeil. */
385
+ errorMessage?: string;
386
+ /**Hjelpetekst. */
387
+ tip?: string;
388
+ /**Custom bredde ved behov. */
389
+ width?: Property.Width<string>;
390
+ /** CSS klassenavn. */
391
+ className?: string;
392
+ /** Inline styling. */
393
+ style?: react__default.CSSProperties;
394
+ customOptionElement?: (props: OptionProps<TOption, IsMulti, GroupBase<TOption>>) => JSX.Element;
395
+ customSingleValueElement?: (props: SingleValueProps<TOption, IsMulti, GroupBase<TOption>>) => JSX.Element;
396
+ } & Pick<HTMLAttributes<HTMLInputElement>, 'aria-required'> & WrappedReactSelectProps<TOption, IsMulti, GroupBase<TOption>>;
397
+ type ForwardRefType<TOption, IsMulti extends boolean> = react__default.ForwardedRef<SelectInstance<TOption, IsMulti, GroupBase<TOption>>>;
398
+ declare const Select: <TOption extends Record<string, unknown>, IsMulti extends boolean = false>(props: SelectProps<TOption, IsMulti>, ref: ForwardRefType<TOption, IsMulti>) => react_jsx_runtime.JSX.Element;
399
+
400
+ type GlobalMessagePurpose = 'info' | 'warning' | 'danger';
401
+ type GlobalMessageProps = BaseComponentPropsWithChildren<HTMLDivElement, {
402
+ /**Meldingen som vises til brukeren. Brukes kun når meldingen er en `string`. */
403
+ message?: string;
404
+ /**Formålet med meldingen. Påvirker styling. */
405
+ purpose?: GlobalMessagePurpose;
406
+ /**Indikerer om meldingen skal være lukkbar. */
407
+ closable?: boolean;
408
+ /**Ekstra logikk å kjøre når meldingen lukkes. */
409
+ onClose?: () => void;
410
+ }>;
411
+ declare const GlobalMessage: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
412
+ /**Meldingen som vises til brukeren. Brukes kun når meldingen er en `string`. */
413
+ message?: string | undefined;
414
+ /**Formålet med meldingen. Påvirker styling. */
415
+ purpose?: GlobalMessagePurpose | undefined;
416
+ /**Indikerer om meldingen skal være lukkbar. */
417
+ closable?: boolean | undefined;
418
+ /**Ekstra logikk å kjøre når meldingen lukkes. */
419
+ onClose?: (() => void) | undefined;
420
+ } & {
421
+ children?: react.ReactNode;
422
+ } & {
423
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
424
+ } & react.RefAttributes<HTMLDivElement>>;
425
+
426
+ type LocalMessagePurpose = 'info' | 'warning' | 'danger' | 'confidential' | 'success' | 'tips';
427
+ type LocalMessageLayout = 'horisontal' | 'vertical';
428
+ type LocalMessageProps = BaseComponentPropsWithChildren<HTMLDivElement, {
429
+ /**Meldingen som vises til brukeren. Brukes kun når meldingen er string. */
430
+ message?: string;
431
+ /**Formålet med meldingen. Påvirker styling. */
432
+ purpose?: LocalMessagePurpose;
433
+ /** Indikerer om meldingen skal være lukkbar.*/
434
+ closable?: boolean;
435
+ /**Ekstra logikk å kjøre når meldingen lukkes. */
436
+ onClose?: () => void;
437
+ /**Layoutet i komponenten. Ved kompleks innhold anbefales `layout='vertical'`. */
438
+ layout?: LocalMessageLayout;
439
+ /**Custom bredde ved behov. */
440
+ width?: Property.Width<string>;
441
+ }>;
442
+ declare const LocalMessage: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
443
+ /**Meldingen som vises til brukeren. Brukes kun når meldingen er string. */
444
+ message?: string | undefined;
445
+ /**Formålet med meldingen. Påvirker styling. */
446
+ purpose?: LocalMessagePurpose | undefined;
447
+ /** Indikerer om meldingen skal være lukkbar.*/
448
+ closable?: boolean | undefined;
449
+ /**Ekstra logikk å kjøre når meldingen lukkes. */
450
+ onClose?: (() => void) | undefined;
451
+ /**Layoutet i komponenten. Ved kompleks innhold anbefales `layout='vertical'`. */
452
+ layout?: LocalMessageLayout | undefined;
453
+ /**Custom bredde ved behov. */
454
+ width?: Property.Width<string> | undefined;
455
+ } & {
456
+ children?: react.ReactNode;
457
+ } & {
458
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
459
+ } & react.RefAttributes<HTMLDivElement>>;
460
+
461
+ type SearchSize = 'small' | 'medium' | 'large';
462
+ type ButtonProps = {
463
+ onClick: (event: MouseEvent$1<HTMLButtonElement>) => void;
464
+ label?: string;
465
+ loading?: boolean;
466
+ purpose?: 'primary' | 'secondary';
467
+ } & ButtonHTMLAttributes<HTMLButtonElement>;
468
+ type SearchProps = Pick<InputProps, 'tip' | 'label'> & {
469
+ /**Størrelsen på komponenten. */
470
+ componentSize?: SearchSize;
471
+ /**Props for søkeknappen. */
472
+ buttonProps?: ButtonProps;
473
+ } & InputHTMLAttributes<HTMLInputElement>;
474
+ declare const Search$1: react.ForwardRefExoticComponent<Pick<InputProps, "label" | "tip"> & {
475
+ /**Størrelsen på komponenten. */
476
+ componentSize?: SearchSize | undefined;
477
+ /**Props for søkeknappen. */
478
+ buttonProps?: ButtonProps | undefined;
479
+ } & InputHTMLAttributes<HTMLInputElement> & react.RefAttributes<HTMLInputElement>>;
480
+
481
+ type WeightedValue = {
482
+ text: string;
483
+ relevance: number;
484
+ };
485
+ type WeightedSearchData = {
486
+ array: WeightedValue[];
487
+ sortFunction?: (a: WeightedValue, b: WeightedValue) => number;
488
+ };
489
+ type SearchData = {
490
+ array: string[];
491
+ sortFunction?: (a: string, b: string) => number;
492
+ };
493
+ type SearchAutocompleteWrapperProps = {
494
+ /**Array med data som kan søkes på og eventuelt tilhørende sorteringsfunksjon. Array kan bestå av elementer av typen `string` eller objekter med vekt og tekst.*/
495
+ data?: SearchData | WeightedSearchData;
496
+ /** Ekstra callback ved `onChange` i `<Search>`. */
497
+ onChange?: (e: ChangeEvent<HTMLInputElement>) => void;
498
+ /**Callback når et forslag blir valgt, inkludert søkefunksjon. */
499
+ onSuggestionSelection?: () => void;
500
+ /** Custom filter for forslag. */
501
+ filter?: (sugestion: string, query: string) => boolean;
502
+ /**Minst lengde på query når forslag skal vises. */
503
+ queryLength?: number;
504
+ /** Barnet til komponenten (`<Search />`). */
505
+ children?: ReactNode;
506
+ /**Initielle `value` i `<Search>`. */
507
+ value?: string;
508
+ };
509
+ declare const SearchAutocompleteWrapper: {
510
+ (props: SearchAutocompleteWrapperProps): react_jsx_runtime.JSX.Element;
511
+ displayName: string;
512
+ };
513
+
514
+ type SearchSuggestionsProps = BaseComponentProps<HTMLDivElement, Pick<SearchProps, 'componentSize'> & {
515
+ /**Forslag som vises i listen. */
516
+ suggestions?: string[];
517
+ /** Om listen skal vises. */
518
+ showSuggestions?: boolean;
519
+ /**Callback når et forslag blir valgt, inkludert søkefunksjon. */
520
+ onSuggestionClick?: (e: MouseEvent$1<HTMLButtonElement>) => void;
521
+ /** Maks antall forslag vist i listen. */
522
+ maxSuggestions?: number;
523
+ /**Id til `<Search>`. */
524
+ searchId: string;
525
+ }>;
526
+ declare const SearchSuggestions: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & Pick<SearchProps, "componentSize"> & {
527
+ /**Forslag som vises i listen. */
528
+ suggestions?: string[] | undefined;
529
+ /** Om listen skal vises. */
530
+ showSuggestions?: boolean | undefined;
531
+ /**Callback når et forslag blir valgt, inkludert søkefunksjon. */
532
+ onSuggestionClick?: ((e: MouseEvent$1<HTMLButtonElement>) => void) | undefined;
533
+ /** Maks antall forslag vist i listen. */
534
+ maxSuggestions?: number | undefined;
535
+ /**Id til `<Search>`. */
536
+ searchId: string;
537
+ } & {
538
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
539
+ } & react.RefAttributes<HTMLDivElement>>;
540
+
541
+ type SearchCompoundProps = typeof Search$1 & {
542
+ AutocompleteWrapper: typeof SearchAutocompleteWrapper;
543
+ Suggestions: typeof SearchSuggestions;
544
+ };
545
+ declare const Search: SearchCompoundProps;
546
+
547
+ type TableDensity = 'normal' | 'compact' | 'extraCompact';
548
+ type TableProps = {
549
+ /**Spesifiserer hvor romslige cellene i tabellen skal være. */
550
+ density?: TableDensity;
551
+ /**Spesifiserer om cellene i `<Head>` skal bli sticky ved scrolling. */
552
+ stickyHeader?: boolean;
553
+ /**Legger skillelinjer mellom radene. */
554
+ withDividers?: boolean;
555
+ } & HTMLAttributes<HTMLTableElement>;
556
+ type HeaderValues = {
557
+ key: string;
558
+ content: ReactNode;
559
+ }[];
560
+ type CollapsibleTableProps = {
561
+ /**Om tabellen skal kollapse. */
562
+ isCollapsed?: boolean;
563
+ /**Innhold i headere (`content`) og deres `key`. `headerValues.content` må være den samme som faktisk innhold i `<Table.Cell type='head'>`. */
564
+ headerValues: HeaderValues;
565
+ /**
566
+ * Indeksen(e) til kolonnen(e) som skal synes når tabellen er kollapset. Rekkefølgen i array avgjør rekkefølgen i render.
567
+ * @default [0]
568
+ * */
569
+ definingColumnIndex?: number[];
570
+ } & TableProps;
571
+ type TableRowType = 'body' | 'head';
572
+ type RowMode = 'normal' | 'sum';
573
+ type TableRowProps = {
574
+ /**Spesifiserer om raden skal brukes i `<head>` eller `<body>`-seksjonen. */
575
+ type?: TableRowType;
576
+ /**Custom modus for rader som har ytterligere semantisk betydning (f.eks. summeringsrad), definerer kun styling. Ved bruk av sum må `<Cell>` med tall i høyrestilles vha layout prop. */
577
+ mode?: RowMode;
578
+ /**Spesifiserer om raden har blitt valgt/markert. */
579
+ selected?: boolean;
580
+ /**Spesifiserer om raden skal ha hover styling. Brukes hovedsakelig på klikkbare rader. */
581
+ hoverable?: boolean;
582
+ } & HTMLAttributes<HTMLTableRowElement>;
583
+
584
+ declare const Table$1: react.ForwardRefExoticComponent<{
585
+ density?: TableDensity | undefined;
586
+ stickyHeader?: boolean | undefined;
587
+ withDividers?: boolean | undefined;
588
+ } & react.HTMLAttributes<HTMLTableElement> & react.RefAttributes<HTMLTableElement>>;
589
+
590
+ declare const CollapsibleTable$1: react.ForwardRefExoticComponent<{
591
+ isCollapsed?: boolean | undefined;
592
+ headerValues: HeaderValues;
593
+ definingColumnIndex?: number[] | undefined;
594
+ } & {
595
+ density?: TableDensity | undefined;
596
+ stickyHeader?: boolean | undefined;
597
+ withDividers?: boolean | undefined;
598
+ } & react.HTMLAttributes<HTMLTableElement> & react.RefAttributes<HTMLTableElement>>;
599
+
600
+ type TableHeadProps = HTMLAttributes<HTMLTableSectionElement>;
601
+ declare const Head: react.ForwardRefExoticComponent<TableHeadProps & react.RefAttributes<HTMLTableSectionElement>>;
602
+
603
+ type TableBodyProps = HTMLAttributes<HTMLTableSectionElement>;
604
+ declare const Body: react.ForwardRefExoticComponent<TableBodyProps & react.RefAttributes<HTMLTableSectionElement>>;
605
+
606
+ type TableFootProps = HTMLAttributes<HTMLTableSectionElement>;
607
+ declare const Foot: react.ForwardRefExoticComponent<TableFootProps & react.RefAttributes<HTMLTableSectionElement>>;
608
+
609
+ declare const Row: react.ForwardRefExoticComponent<{
610
+ type?: TableRowType | undefined;
611
+ mode?: RowMode | undefined;
612
+ selected?: boolean | undefined;
613
+ hoverable?: boolean | undefined;
614
+ } & react.HTMLAttributes<HTMLTableRowElement> & react.RefAttributes<HTMLTableRowElement>>;
615
+
616
+ declare const CollapsibleRow: react.ForwardRefExoticComponent<{
617
+ type?: TableRowType | undefined;
618
+ mode?: RowMode | undefined;
619
+ selected?: boolean | undefined;
620
+ hoverable?: boolean | undefined;
621
+ } & react.HTMLAttributes<HTMLTableRowElement> & react.RefAttributes<HTMLTableRowElement>>;
622
+
623
+ type TableCellType = 'data' | 'head';
624
+ type TableCellLayout = 'left' | 'right' | 'center' | 'text and icon';
625
+ type CollapsibleProps = {
626
+ isCollapsibleChild?: boolean;
627
+ };
628
+ type TableCellProps = {
629
+ /**Type celle. Returnerer enten `<td>` eller `<th>`. */
630
+ type?: TableCellType;
631
+ /**Layout av innholdet i cellen. 'tekst and icon' legger `gap` mellom barna og andre barnet i cellen. */
632
+ layout?: TableCellLayout;
633
+ /** Props ved bruk av `<CollapsibleRow>`. **OBS!** settes automatisk av forelder. */
634
+ collapsibleProps?: CollapsibleProps;
635
+ } & (TdHTMLAttributes<HTMLTableCellElement> | ThHTMLAttributes<HTMLTableCellElement>);
636
+ declare const Cell: react.ForwardRefExoticComponent<TableCellProps & react.RefAttributes<HTMLTableCellElement>>;
637
+
638
+ type SortOrder = 'ascending' | 'descending';
639
+ type TableSortCellProps = {
640
+ /**Spesifiserer om kolonnen er sortert. */
641
+ isSorted?: boolean;
642
+ /**Sorteringsrekkefølge i kolonnen. Avgjør hvilket ikon skal vises i cellen. */
643
+ sortOrder?: SortOrder;
644
+ /**onClick-funksjon for sortering og annen logikk. */
645
+ onClick: (event: MouseEvent$1<HTMLButtonElement>) => void;
646
+ } & Omit<TableCellProps, 'type'>;
647
+ declare const SortCell: react.ForwardRefExoticComponent<{
648
+ /**Spesifiserer om kolonnen er sortert. */
649
+ isSorted?: boolean | undefined;
650
+ /**Sorteringsrekkefølge i kolonnen. Avgjør hvilket ikon skal vises i cellen. */
651
+ sortOrder?: SortOrder | undefined;
652
+ /**onClick-funksjon for sortering og annen logikk. */
653
+ onClick: (event: MouseEvent$1<HTMLButtonElement>) => void;
654
+ } & Omit<TableCellProps, "type"> & react.RefAttributes<HTMLTableCellElement>>;
655
+
656
+ type TableWrapperProps = HTMLAttributes<HTMLDivElement>;
657
+ declare const TableWrapper: {
658
+ ({ children, ...rest }: TableWrapperProps): react_jsx_runtime.JSX.Element;
659
+ displayName: string;
660
+ };
661
+
662
+ type TableCompoundProps = typeof Table$1 & {
663
+ Wrapper: typeof TableWrapper;
664
+ Head: typeof Head;
665
+ Body: typeof Body;
666
+ Foot: typeof Foot;
667
+ Row: typeof Row;
668
+ Cell: typeof Cell;
669
+ SortCell: typeof SortCell;
670
+ };
671
+ declare const Table: TableCompoundProps;
672
+ type CollapsibleTableCompoundProps = typeof CollapsibleTable$1 & {
673
+ Row: typeof CollapsibleRow;
674
+ };
675
+ declare const CollapsibleTable: CollapsibleTableCompoundProps;
676
+
677
+ type BreadcrumbProps = HTMLAttributes<HTMLSpanElement> | AnchorHTMLAttributes<HTMLAnchorElement>;
678
+ declare const Breadcrumb: react.ForwardRefExoticComponent<BreadcrumbProps & react.RefAttributes<HTMLElement>>;
679
+
680
+ type BreadcrumbsProps = BaseComponentPropsWithChildren<HTMLElement>;
681
+ declare const Breadcrumbs: react.ForwardRefExoticComponent<Omit<BreadcrumbsProps, "ref"> & react.RefAttributes<HTMLElement>>;
682
+
683
+ type PaginationOption = {
684
+ label: string;
685
+ value: number;
686
+ };
687
+ type PaginationProps = BaseComponentProps<HTMLElement, {
688
+ /**Totalt antall elementer å paginere. */
689
+ itemsAmount: number;
690
+ /**Antall elementer per side ved innlastning av komponenten. */
691
+ defaultItemsPerPage?: number;
692
+ /**Den aktive siden ved innlastning av komponenten. */
693
+ defaultActivePage?: number;
694
+ /**Spesifiserer om selve pagineringen skal vises. */
695
+ withPagination?: boolean;
696
+ /**Spesifiserer om teksten `'Vis x-y av z'` skal vises. */
697
+ withCounter?: boolean;
698
+ /**Spesifiserer om `<Select />` til å velge antall resultater per side skal vises. */
699
+ withSelect?: boolean;
700
+ /**Custom options for `<Select />`. **OBS!** hvis det settes custom `selectOptions` bør "alle"-alternativet inkluderes der det er relevant, da brukere ofte liker å ha muligheten. */
701
+ selectOptions?: PaginationOption[];
702
+ /**Brukes til å hente side og eventuelt annen logikk ved endring av side. */
703
+ onChange?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>, page: number) => void;
704
+ /**Brukes til å hente `selectedOption` og eventuelt kjøre annen logikk når `withSelect=true` ved endring av alternativ. */
705
+ onSelectOptionChange?: (option: PaginationOption | null) => void;
706
+ /**Spesifiserer om versjonen for små skjermer skal vises; den viser færre sideknapper og stacker subkomponentene. */
707
+ smallScreen?: boolean;
708
+ }, Omit<HTMLAttributes<HTMLElement>, 'onChange'>>;
709
+ declare const Pagination: react.ForwardRefExoticComponent<Pick<Omit<HTMLAttributes<HTMLElement>, "onChange">, "className" | "id"> & {
710
+ /**Totalt antall elementer å paginere. */
711
+ itemsAmount: number;
712
+ /**Antall elementer per side ved innlastning av komponenten. */
713
+ defaultItemsPerPage?: number | undefined;
714
+ /**Den aktive siden ved innlastning av komponenten. */
715
+ defaultActivePage?: number | undefined;
716
+ /**Spesifiserer om selve pagineringen skal vises. */
717
+ withPagination?: boolean | undefined;
718
+ /**Spesifiserer om teksten `'Vis x-y av z'` skal vises. */
719
+ withCounter?: boolean | undefined;
720
+ /**Spesifiserer om `<Select />` til å velge antall resultater per side skal vises. */
721
+ withSelect?: boolean | undefined;
722
+ /**Custom options for `<Select />`. **OBS!** hvis det settes custom `selectOptions` bør "alle"-alternativet inkluderes der det er relevant, da brukere ofte liker å ha muligheten. */
723
+ selectOptions?: PaginationOption[] | undefined;
724
+ /**Brukes til å hente side og eventuelt annen logikk ved endring av side. */
725
+ onChange?: ((event: React.MouseEvent<HTMLButtonElement, MouseEvent>, page: number) => void) | undefined;
726
+ /**Brukes til å hente `selectedOption` og eventuelt kjøre annen logikk når `withSelect=true` ved endring av alternativ. */
727
+ onSelectOptionChange?: ((option: PaginationOption | null) => void) | undefined;
728
+ /**Spesifiserer om versjonen for små skjermer skal vises; den viser færre sideknapper og stacker subkomponentene. */
729
+ smallScreen?: boolean | undefined;
730
+ } & {
731
+ htmlProps?: Omit<HTMLAttributes<HTMLElement>, "onChange"> | undefined;
732
+ } & react.RefAttributes<HTMLElement>>;
733
+
734
+ type DividerColor = 'primary' | 'primaryLighter';
735
+ type DividerProps = BaseComponentProps<HTMLHRElement, {
736
+ /** Farge på horisontal linje. */
737
+ color?: DividerColor;
738
+ }>;
739
+ declare const Divider: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLHRElement>, "className" | "id"> & {
740
+ /** Farge på horisontal linje. */
741
+ color?: DividerColor | undefined;
742
+ } & {
743
+ htmlProps?: react.HTMLAttributes<HTMLHRElement> | undefined;
744
+ } & react.RefAttributes<HTMLHRElement>>;
745
+
746
+ type ListType = 'ordered' | 'unordered';
747
+ type ListTypographyType = TypographyBodyType | 'inherit';
748
+ type ListProps = BaseComponentPropsWithChildren<HTMLUListElement | HTMLOListElement, {
749
+ /**Spesifiserer om komponenten skal returnere `<ul />` (punktliste) eller `<ol />` (nummerert liste). */
750
+ listType?: ListType;
751
+ /**Spesifiserer typografi for listen. Komponenten arver i utgangspunktet fra forelder, men hvis forelder stiller ikke med relevant styling må det velges `TypographyBodyType` som brukes i `<body>` ellers på siden. */
752
+ typographyType?: ListTypographyType;
753
+ }>;
754
+ declare const List: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLOListElement | HTMLUListElement>, "className" | "id"> & {
755
+ /**Spesifiserer om komponenten skal returnere `<ul />` (punktliste) eller `<ol />` (nummerert liste). */
756
+ listType?: ListType | undefined;
757
+ /**Spesifiserer typografi for listen. Komponenten arver i utgangspunktet fra forelder, men hvis forelder stiller ikke med relevant styling må det velges `TypographyBodyType` som brukes i `<body>` ellers på siden. */
758
+ typographyType?: ListTypographyType | undefined;
759
+ } & {
760
+ children?: react.ReactNode;
761
+ } & {
762
+ htmlProps?: react.HTMLAttributes<HTMLOListElement | HTMLUListElement> | undefined;
763
+ } & react.RefAttributes<HTMLOListElement | HTMLUListElement>>;
764
+
765
+ type ListItemProps = HTMLAttributes<HTMLLIElement>;
766
+ declare const ListItem: react.ForwardRefExoticComponent<ListItemProps & react.RefAttributes<HTMLLIElement>>;
767
+
768
+ type DescriptionListAppearance = 'small' | 'bold';
769
+ type DescriptionListProps = BaseComponentPropsWithChildren<HTMLDListElement, {
770
+ /**Påvirker tekst styling. */
771
+ appearance?: DescriptionListAppearance;
772
+ /**Setter flex-direction. NB! Fungerer kun ved bruk av `DescriptionListGroup` som barn av `DescriptionList`.
773
+ * @default "column"
774
+ */
775
+ direction?: 'row' | 'column';
776
+ }>;
777
+ declare const DescriptionList: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDListElement>, "className" | "id"> & {
778
+ /**Påvirker tekst styling. */
779
+ appearance?: DescriptionListAppearance | undefined;
780
+ /**Setter flex-direction. NB! Fungerer kun ved bruk av `DescriptionListGroup` som barn av `DescriptionList`.
781
+ * @default "column"
782
+ */
783
+ direction?: "row" | "column" | undefined;
784
+ } & {
785
+ children?: react.ReactNode;
786
+ } & {
787
+ htmlProps?: react.HTMLAttributes<HTMLDListElement> | undefined;
788
+ } & react.RefAttributes<HTMLDListElement>>;
789
+
790
+ type DescriptionListTermProps = HTMLAttributes<HTMLElement>;
791
+ declare const DescriptionListTerm: react.ForwardRefExoticComponent<DescriptionListTermProps & react.RefAttributes<HTMLElement>>;
792
+
793
+ type DescriptionListDescProps = BaseComponentPropsWithChildren<HTMLElement, {
794
+ /**Ikon som vises ved siden av teksten. */
795
+ icon?: SvgIcon;
796
+ }>;
797
+ declare const DescriptionListDesc: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLElement>, "className" | "id"> & {
798
+ /**Ikon som vises ved siden av teksten. */
799
+ icon?: SvgIcon | undefined;
800
+ } & {
801
+ children?: react.ReactNode;
802
+ } & {
803
+ htmlProps?: react.HTMLAttributes<HTMLElement> | undefined;
804
+ } & react.RefAttributes<HTMLElement>>;
805
+
806
+ type DescriptionListGroupProps = BaseComponentPropsWithChildren<HTMLDivElement, {
807
+ /**Custom margin. */
808
+ margin?: Property.Margin<string>;
809
+ /**Custom min-width. */
810
+ minWidth?: Property.MinWidth<string>;
811
+ /**Custom max-width. */
812
+ maxWidth?: Property.MaxWidth<string>;
813
+ }>;
814
+ declare const DescriptionListGroup: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
815
+ /**Custom margin. */
816
+ margin?: Property.Margin<string> | undefined;
817
+ /**Custom min-width. */
818
+ minWidth?: Property.MinWidth<string> | undefined;
819
+ /**Custom max-width. */
820
+ maxWidth?: Property.MaxWidth<string> | undefined;
821
+ } & {
822
+ children?: react.ReactNode;
823
+ } & {
824
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
825
+ } & react.RefAttributes<HTMLDivElement>>;
826
+
827
+ type SpinnerProps = BaseComponentProps<SVGElement, {
828
+ /**Farge på spinneren. */
829
+ color?: TextColor | string;
830
+ /**Størrelse; Setter høyde og bredde på spinneren. */
831
+ size?: Property.Width<string>;
832
+ /**Tekst som vises ved hover. */
833
+ tooltip?: string;
834
+ }>;
835
+ declare function Spinner(props: SpinnerProps): react_jsx_runtime.JSX.Element;
836
+ declare namespace Spinner {
837
+ var displayName: string;
838
+ }
839
+
840
+ type CardColor = 'filledDark' | 'filledLight' | 'strokeDark' | 'strokeLight';
841
+ type CardType = 'info' | 'navigation' | 'expandable';
842
+ type BaseCardProps<T extends HTMLElement> = BaseComponentPropsWithChildren<T, {
843
+ /** Fargepalett i komponenten. */
844
+ color?: CardColor;
845
+ /** Referanse til komponenten. */
846
+ cardRef?: RefObject<T>;
847
+ }>;
848
+ type InfoCardProps = BaseCardProps<HTMLDivElement> & {
849
+ /** Spesifiserer funksjonalitet og formål med komponenten. **OBS!** ved `'navigation'` må `href` oppgis. Ved `'expandable'` må alle `<Card />` grupperte sammen ligge egen `<div>` container. */
850
+ cardType: 'info';
851
+ };
852
+ type NavigationCardProps = BaseCardProps<HTMLAnchorElement> & {
853
+ cardType: 'navigation';
854
+ } & Pick<AnchorHTMLAttributes<HTMLAnchorElement>, 'href' | 'target'>;
855
+ type ExpandableCardProps = BaseCardProps<HTMLDivElement> & {
856
+ cardType: 'expandable';
857
+ };
858
+ type CardProps = InfoCardProps | NavigationCardProps | ExpandableCardProps;
859
+ declare const Card: {
860
+ (props: CardProps): react_jsx_runtime.JSX.Element;
861
+ displayName: string;
862
+ };
863
+
864
+ type CardAccordionProps = BaseComponentPropsWithChildren<HTMLDivElement, {
865
+ /**Spesifiserer om body skal være utvidet ved innlastning. */
866
+ isExpanded?: boolean;
867
+ /**For å lytte til endringer i expanded-state. */
868
+ onChange?: (expanded: boolean) => void;
869
+ }>;
870
+ declare const CardAccordion: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
871
+ /**Spesifiserer om body skal være utvidet ved innlastning. */
872
+ isExpanded?: boolean | undefined;
873
+ /**For å lytte til endringer i expanded-state. */
874
+ onChange?: ((expanded: boolean) => void) | undefined;
875
+ } & {
876
+ children?: react.ReactNode;
877
+ } & {
878
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
879
+ } & react.RefAttributes<HTMLDivElement>>;
880
+
881
+ type CardAccordionHeaderProps = BaseComponentPropsWithChildren<HTMLButtonElement, {
882
+ /** **OBS!** denne propen blir satt automatisk av forelder. Forteller body er utvidet. */
883
+ isExpanded?: boolean;
884
+ /** **OBS!** denne propen blir satt automatisk av forelder. Callback for å styre utvidelse og sammentrukking. */
885
+ toggleExpanded?: () => void;
886
+ /** **OBS!** denne propen blir satt automatisk av forelder. Forteller `id` til `<CardAccordionBody />`. */
887
+ bodyId?: string;
888
+ /**Overskriver default padding. */
889
+ padding?: Property.Padding<string>;
890
+ /**Overskriver default teksttype. */
891
+ typographyType?: StaticTypographyType;
892
+ /**Angir om teksten skal være i "bold"-format. */
893
+ bold?: boolean;
894
+ }, ButtonHTMLAttributes<HTMLButtonElement>>;
895
+ declare const CardAccordionHeader: react.ForwardRefExoticComponent<Pick<ButtonHTMLAttributes<HTMLButtonElement>, "className" | "id"> & {
896
+ /** **OBS!** denne propen blir satt automatisk av forelder. Forteller body er utvidet. */
897
+ isExpanded?: boolean | undefined;
898
+ /** **OBS!** denne propen blir satt automatisk av forelder. Callback for å styre utvidelse og sammentrukking. */
899
+ toggleExpanded?: (() => void) | undefined;
900
+ /** **OBS!** denne propen blir satt automatisk av forelder. Forteller `id` til `<CardAccordionBody />`. */
901
+ bodyId?: string | undefined;
902
+ /**Overskriver default padding. */
903
+ padding?: Property.Padding<string> | undefined;
904
+ /**Overskriver default teksttype. */
905
+ typographyType?: StaticTypographyType | undefined;
906
+ /**Angir om teksten skal være i "bold"-format. */
907
+ bold?: boolean | undefined;
908
+ } & {
909
+ children?: react.ReactNode;
910
+ } & {
911
+ htmlProps?: ButtonHTMLAttributes<HTMLButtonElement> | undefined;
912
+ } & react.RefAttributes<HTMLButtonElement>>;
913
+
914
+ type CardAccordionBodyProps = BaseComponentPropsWithChildren<HTMLDivElement, {
915
+ /** **OBS!** denne propen blir satt automatisk av forelder. Forteller komponenten om den skal utvides. */
916
+ isExpanded?: boolean;
917
+ /** **OBS!** denne propen blir satt automatisk av forelder. Forteller `id` til `<CardAccordionHeader />`. */
918
+ headerId?: string;
919
+ /**Overskriver default padding på toppen. Brukes når barn har spacing på toppen, f.eks. en overskrift. */
920
+ paddingTop?: Property.PaddingTop<string>;
921
+ /**Overskriver default padding. */
922
+ padding?: Property.Padding<string>;
923
+ }>;
924
+ declare const CardAccordionBody: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
925
+ /** **OBS!** denne propen blir satt automatisk av forelder. Forteller komponenten om den skal utvides. */
926
+ isExpanded?: boolean | undefined;
927
+ /** **OBS!** denne propen blir satt automatisk av forelder. Forteller `id` til `<CardAccordionHeader />`. */
928
+ headerId?: string | undefined;
929
+ /**Overskriver default padding på toppen. Brukes når barn har spacing på toppen, f.eks. en overskrift. */
930
+ paddingTop?: Property.PaddingTop<string> | undefined;
931
+ /**Overskriver default padding. */
932
+ padding?: Property.Padding<string> | undefined;
933
+ } & {
934
+ children?: react.ReactNode;
935
+ } & {
936
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
937
+ } & react.RefAttributes<HTMLDivElement>>;
938
+
939
+ type NavigationLinkProps = {
940
+ href: string;
941
+ title: string;
942
+ } & AnchorHTMLAttributes<HTMLAnchorElement>;
943
+ type ContextMenuElementProps = {
944
+ title: string;
945
+ href?: string;
946
+ icon?: SvgIcon;
947
+ onClick?: () => void;
948
+ } & (AnchorHTMLAttributes<HTMLAnchorElement> | ButtonHTMLAttributes<HTMLButtonElement>);
949
+ type InternaHeaderUserProps = {
950
+ name: string;
951
+ href?: string;
952
+ };
953
+ type InternalHeaderProps = BaseComponentProps<HTMLDivElement, {
954
+ /**Navn på applikasjonen. */
955
+ applicationName?: string;
956
+ /**Beskrivelse på applikasjonen ellen tittel på en underside. Tilgjengelig fram til Lovisa Next kommer. */
957
+ applicationDesc?: string;
958
+ /**Indikerer om versjonen for små skjermer skal vises. */
959
+ smallScreen?: boolean;
960
+ /**Info om brukeren. Dukker opp som punkt på toppen av kontekstmenyen med tekst oppgitt i name. Blir en lenke hvis href er oppgitt. */
961
+ userProps?: InternaHeaderUserProps;
962
+ /**Lenker som skal vises i navigasjonsmenyen. */
963
+ navigationElements?: NavigationLinkProps[];
964
+ /**Lenker eller knapper som skal vises i kontekstmenyen. Støtter ikon i tillegg til tekst. */
965
+ contextMenuElements?: ContextMenuElementProps[];
966
+ /**URL til siden i navigasjonen brukeren er på. Gir highlight til navigasjonselementet i navigationElements med samme URL. */
967
+ currentPageHref?: string;
968
+ /**Ekstra logikk som kjøres når currentPage endres. */
969
+ onCurrentPageChange?: () => void;
970
+ }>;
971
+
972
+ declare const InternalHeader: {
973
+ (props: InternalHeaderProps): react_jsx_runtime.JSX.Element;
974
+ displayName: string;
975
+ };
976
+
977
+ type DatepickerType = 'date' | 'datetime-local';
978
+ type DatepickerProps = Omit<InputProps, 'type'> & {
979
+ /** Angi dato-input med eller uten klokkeslett. */
980
+ type?: DatepickerType;
981
+ };
982
+ declare const Datepicker: react.ForwardRefExoticComponent<Omit<InputProps, "type"> & {
983
+ /** Angi dato-input med eller uten klokkeslett. */
984
+ type?: DatepickerType | undefined;
985
+ } & react.RefAttributes<HTMLInputElement>>;
986
+
987
+ type SkipToContentProps = BaseComponentProps<HTMLAnchorElement, {
988
+ /** Teksten som vises i lenka. */
989
+ text?: string;
990
+ /**Spesifiserer hvor det skal hoppes til via `id`-attributtet til innholdet. */
991
+ href: string;
992
+ /**Avstand fra top i nærmeste posisjonert container. */
993
+ top?: Property.Top;
994
+ }>;
995
+ declare const SkipToContent: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLAnchorElement>, "className" | "id"> & {
996
+ /** Teksten som vises i lenka. */
997
+ text?: string | undefined;
998
+ /**Spesifiserer hvor det skal hoppes til via `id`-attributtet til innholdet. */
999
+ href: string;
1000
+ /**Avstand fra top i nærmeste posisjonert container. */
1001
+ top?: Property.Top<0 | (string & {})> | undefined;
1002
+ } & {
1003
+ htmlProps?: react.HTMLAttributes<HTMLAnchorElement> | undefined;
1004
+ } & react.RefAttributes<HTMLAnchorElement>>;
1005
+
1006
+ type AnchorElement = react__default.ReactElement & react__default.RefAttributes<HTMLElement>;
1007
+ type PickedHTMLAttributes = Pick<HTMLAttributes<HTMLDivElement>, 'style' | 'onMouseLeave' | 'onMouseOver'>;
1008
+ type TooltipProps = BaseComponentProps<HTMLDivElement, {
1009
+ /**Innhold i tooltip. */
1010
+ text: string;
1011
+ /**Plassering i forhold til anchor-elementet. */
1012
+ placement?: Placement;
1013
+ /**Anchor-elementet. */
1014
+ children: AnchorElement;
1015
+ /**Forsinkelse for når tooltip skal dukke opp. Oppgis i millisekunder. */
1016
+ delay?: number;
1017
+ /**`id` for tooltip. */
1018
+ tooltipId?: string;
1019
+ } & PickedHTMLAttributes, Omit<HTMLAttributes<HTMLDivElement>, 'children' | keyof PickedHTMLAttributes>>;
1020
+ declare const Tooltip: react__default.ForwardRefExoticComponent<Pick<Omit<react__default.HTMLAttributes<HTMLDivElement>, "style" | "children" | "onMouseLeave" | "onMouseOver">, "className" | "id"> & {
1021
+ /**Innhold i tooltip. */
1022
+ text: string;
1023
+ /**Plassering i forhold til anchor-elementet. */
1024
+ placement?: Placement | undefined;
1025
+ /**Anchor-elementet. */
1026
+ children: AnchorElement;
1027
+ /**Forsinkelse for når tooltip skal dukke opp. Oppgis i millisekunder. */
1028
+ delay?: number | undefined;
1029
+ /**`id` for tooltip. */
1030
+ tooltipId?: string | undefined;
1031
+ } & PickedHTMLAttributes & {
1032
+ htmlProps?: Omit<react__default.HTMLAttributes<HTMLDivElement>, "style" | "children" | "onMouseLeave" | "onMouseOver"> | undefined;
1033
+ } & react__default.RefAttributes<HTMLDivElement>>;
1034
+
1035
+ type ModalProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1036
+ /**Spesifiserer om modal skal vises. */
1037
+ isOpen?: boolean;
1038
+ /**Funksjon kjørt ved lukking; Settes hvis modal skal være lukkbar. Legger en lukkeknapp i hjørnet og kjøres ved Esc-trykk, lukkeknappklikk og museklikk utenfor. */
1039
+ onClose?: () => void;
1040
+ /**Spesifiserer hvilken DOM node `<Modal />` skal ha som forelder via React portal. Brukes med f.eks `document.getElementById("id")` (skaper ikke ny DOM node). */
1041
+ parentElement?: HTMLElement;
1042
+ /**Tittel/header i modal. Setter `aria-labelledby`. */
1043
+ header?: string | ReactNode;
1044
+ /**Ref som brukes til returnering av fokus. */
1045
+ triggerRef?: RefObject<HTMLElement>;
1046
+ }>;
1047
+ declare const Modal: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
1048
+ /**Spesifiserer om modal skal vises. */
1049
+ isOpen?: boolean | undefined;
1050
+ /**Funksjon kjørt ved lukking; Settes hvis modal skal være lukkbar. Legger en lukkeknapp i hjørnet og kjøres ved Esc-trykk, lukkeknappklikk og museklikk utenfor. */
1051
+ onClose?: (() => void) | undefined;
1052
+ /**Spesifiserer hvilken DOM node `<Modal />` skal ha som forelder via React portal. Brukes med f.eks `document.getElementById("id")` (skaper ikke ny DOM node). */
1053
+ parentElement?: HTMLElement | undefined;
1054
+ /**Tittel/header i modal. Setter `aria-labelledby`. */
1055
+ header?: string | ReactNode;
1056
+ /**Ref som brukes til returnering av fokus. */
1057
+ triggerRef?: RefObject<HTMLElement> | undefined;
1058
+ } & {
1059
+ children?: ReactNode;
1060
+ } & {
1061
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1062
+ } & react.RefAttributes<HTMLDivElement>>;
1063
+
1064
+ type ModalBodyProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1065
+ /**Gjør at innholdet kan scrolles. Det må eventuelt settes (max)bredde og (max)høyde styling på både denne subkomponenten og `<Modal />`. */
1066
+ scrollable?: boolean;
1067
+ /**Høyde på container. */
1068
+ height?: Property.Height;
1069
+ }>;
1070
+ declare const ModalBody: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
1071
+ /**Gjør at innholdet kan scrolles. Det må eventuelt settes (max)bredde og (max)høyde styling på både denne subkomponenten og `<Modal />`. */
1072
+ scrollable?: boolean | undefined;
1073
+ /**Høyde på container. */
1074
+ height?: Property.Height<0 | (string & {})> | undefined;
1075
+ } & {
1076
+ children?: react.ReactNode;
1077
+ } & {
1078
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1079
+ } & react.RefAttributes<HTMLDivElement>>;
1080
+
1081
+ type ModalActionsProps = HTMLAttributes<HTMLDivElement>;
1082
+ declare const ModalActions: react.ForwardRefExoticComponent<ModalActionsProps & react.RefAttributes<HTMLDivElement>>;
1083
+
1084
+ type DrawerSize = 'small' | 'medium' | 'large';
1085
+ type DrawerPlacement = 'left' | 'right';
1086
+ type WidthProps = {
1087
+ minWidth?: Property.MinWidth<string>;
1088
+ maxWidth?: Property.MaxWidth<string>;
1089
+ width?: Property.Width<string>;
1090
+ };
1091
+ type DrawerProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1092
+ /**Størrelsen på `<Drawer />`. */
1093
+ size?: DrawerSize;
1094
+ /** Plasseringen til `<Drawer />`. */
1095
+ placement?: DrawerPlacement;
1096
+ /**Header for `<Drawer />`. Har default styling hvis verdien er en string. */
1097
+ header?: string | ReactNode;
1098
+ /**Spesifiserer om `<Drawer />` skal legges vises. **OBS!** nødvendig kun hvis `<DrawerGroup />` ikke er i bruk. */
1099
+ isOpen?: boolean;
1100
+ /**Funksjon kjørt ved lukking. **OBS!** nødvendig kun hvis `<DrawerGroup />` ikke er i bruk. */
1101
+ onClose?: () => void;
1102
+ /**Spesifiserer hvilken DOM node `<Drawer />` skal ha som forelder via React portal. Brukes med f.eks `document.getElementById("id")` (skaper ikke ny DOM node). */
1103
+ parentElement?: HTMLElement;
1104
+ /**Custom props for breddehåndtering ved behov. */
1105
+ widthProps?: WidthProps;
1106
+ /**Ref til elementet som åpner `<Drawer />`. **OBS!** nødvendig kun hvis `<DrawerGroup />` ikke er i bruk. */
1107
+ triggerRef?: RefObject<HTMLElement>;
1108
+ }>;
1109
+ declare const Drawer: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
1110
+ /**Størrelsen på `<Drawer />`. */
1111
+ size?: DrawerSize | undefined;
1112
+ /** Plasseringen til `<Drawer />`. */
1113
+ placement?: DrawerPlacement | undefined;
1114
+ /**Header for `<Drawer />`. Har default styling hvis verdien er en string. */
1115
+ header?: string | ReactNode;
1116
+ /**Spesifiserer om `<Drawer />` skal legges vises. **OBS!** nødvendig kun hvis `<DrawerGroup />` ikke er i bruk. */
1117
+ isOpen?: boolean | undefined;
1118
+ /**Funksjon kjørt ved lukking. **OBS!** nødvendig kun hvis `<DrawerGroup />` ikke er i bruk. */
1119
+ onClose?: (() => void) | undefined;
1120
+ /**Spesifiserer hvilken DOM node `<Drawer />` skal ha som forelder via React portal. Brukes med f.eks `document.getElementById("id")` (skaper ikke ny DOM node). */
1121
+ parentElement?: HTMLElement | undefined;
1122
+ /**Custom props for breddehåndtering ved behov. */
1123
+ widthProps?: WidthProps | undefined;
1124
+ /**Ref til elementet som åpner `<Drawer />`. **OBS!** nødvendig kun hvis `<DrawerGroup />` ikke er i bruk. */
1125
+ triggerRef?: RefObject<HTMLElement> | undefined;
1126
+ } & {
1127
+ children?: ReactNode;
1128
+ } & {
1129
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1130
+ } & react.RefAttributes<HTMLDivElement>>;
1131
+
1132
+ type DrawerGroupProps = {
1133
+ /**Barna til komponenten. */
1134
+ children: ReactNode;
1135
+ /**`id` til `<Drawer />`. */
1136
+ drawerId?: string;
1137
+ /**Ekstra logikk som kjøres når `<Drawer />` åpnes. */
1138
+ onOpen?: () => void;
1139
+ /**Ekstra logikk som kjøres når `<Drawer />` lukkes. */
1140
+ onClose?: () => void;
1141
+ };
1142
+ declare const DrawerGroup: {
1143
+ ({ children, drawerId, onOpen, onClose, }: DrawerGroupProps): react_jsx_runtime.JSX.Element;
1144
+ displayName: string;
1145
+ };
1146
+
1147
+ type PopoverSizeProps = {
1148
+ width?: Property.Width<string>;
1149
+ height?: Property.Height<string>;
1150
+ minWidth?: Property.MinWidth<string>;
1151
+ minHeight?: Property.MinHeight<string>;
1152
+ maxWidth?: Property.MaxWidth<string>;
1153
+ maxHeight?: Property.MaxHeight<string>;
1154
+ };
1155
+ type PopoverProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1156
+ /**Tittel. */
1157
+ title?: string | ReactNode;
1158
+ /** **OBS!** Propen settes automatisk av `<PopoverGroup />`. Spesifiserer om `<Popover />` skal vises. */
1159
+ isOpen?: boolean;
1160
+ /**Om lukkeknapp skal vises. */
1161
+ withCloseButton?: boolean;
1162
+ /** **OBS!** Propen settes automatisk av `<PopoverGroup />`. Anchor-elementet. */
1163
+ anchorElement?: HTMLElement;
1164
+ /**Spesifiserer hvor komponenten skal plasseres i forhold til anchor-elementet. */
1165
+ placement?: Placement;
1166
+ /**Avstand fra anchor-elementet i px. */
1167
+ offset?: number;
1168
+ /** Ekstra logikk kjørt når lukkeknappen trykkes. */
1169
+ onCloseButtonClick?: () => void;
1170
+ /** Ekstra logikk kjørt når popover mister fokus. */
1171
+ onBlur?: () => void;
1172
+ /**Custom størrelse. */
1173
+ sizeProps?: PopoverSizeProps;
1174
+ /** **OBS!** Propen settes automatisk av `<PopoverGroup />`. Funksjon kjørt ved lukking. */
1175
+ onClose?: () => void;
1176
+ }>;
1177
+ declare const Popover: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
1178
+ /**Tittel. */
1179
+ title?: string | ReactNode;
1180
+ /** **OBS!** Propen settes automatisk av `<PopoverGroup />`. Spesifiserer om `<Popover />` skal vises. */
1181
+ isOpen?: boolean | undefined;
1182
+ /**Om lukkeknapp skal vises. */
1183
+ withCloseButton?: boolean | undefined;
1184
+ /** **OBS!** Propen settes automatisk av `<PopoverGroup />`. Anchor-elementet. */
1185
+ anchorElement?: HTMLElement | undefined;
1186
+ /**Spesifiserer hvor komponenten skal plasseres i forhold til anchor-elementet. */
1187
+ placement?: Placement | undefined;
1188
+ /**Avstand fra anchor-elementet i px. */
1189
+ offset?: number | undefined;
1190
+ /** Ekstra logikk kjørt når lukkeknappen trykkes. */
1191
+ onCloseButtonClick?: (() => void) | undefined;
1192
+ /** Ekstra logikk kjørt når popover mister fokus. */
1193
+ onBlur?: (() => void) | undefined;
1194
+ /**Custom størrelse. */
1195
+ sizeProps?: PopoverSizeProps | undefined;
1196
+ /** **OBS!** Propen settes automatisk av `<PopoverGroup />`. Funksjon kjørt ved lukking. */
1197
+ onClose?: (() => void) | undefined;
1198
+ } & {
1199
+ children?: ReactNode;
1200
+ } & {
1201
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1202
+ } & react.RefAttributes<HTMLDivElement>>;
1203
+
1204
+ type PopoverGroupProps = {
1205
+ /**Callback når det trykkes på lukkeknappen. */
1206
+ onCloseButtonClick?: () => void;
1207
+ /** Callback når det trykkes på anchor-elementet (trigger-elementet). */
1208
+ onTriggerClick?: () => void;
1209
+ /**Forteller `<Popover />` om den skal være åpen. */
1210
+ isOpen?: boolean;
1211
+ /** `id` til `<Popover />.` */
1212
+ popoverId?: string;
1213
+ /** Barna til wrapperen: anchor-element som det første og `<Popover />` so det adnre. */
1214
+ children: ReactNode;
1215
+ };
1216
+ declare const PopoverGroup: {
1217
+ ({ isOpen, onCloseButtonClick, onTriggerClick, children, popoverId, }: PopoverGroupProps): react_jsx_runtime.JSX.Element;
1218
+ displayName: string;
1219
+ };
1220
+
1221
+ type InputMessageType = 'error' | 'tip';
1222
+ type InputMessageProps = BaseComponentProps<HTMLDivElement, {
1223
+ /** Meldingen som vises til brukeren. */
1224
+ message: string;
1225
+ /** Formålet med meldingen. Påvirker styling. */
1226
+ messageType: InputMessageType;
1227
+ }>;
1228
+ declare const InputMessage: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
1229
+ /** Meldingen som vises til brukeren. */
1230
+ message: string;
1231
+ /** Formålet med meldingen. Påvirker styling. */
1232
+ messageType: InputMessageType;
1233
+ } & {
1234
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1235
+ } & react.RefAttributes<HTMLDivElement>>;
1236
+
1237
+ declare const ToggleButton: react.ForwardRefExoticComponent<Pick<Omit<react.InputHTMLAttributes<HTMLInputElement>, "name" | "aria-describedby" | "onBlur" | "onChange" | "defaultChecked" | "defaultValue" | "value" | "checked">, "className" | "id"> & {
1238
+ label?: string | undefined;
1239
+ icon?: _norges_domstoler_dds_icons.SvgIcon | undefined;
1240
+ } & CheckboxPickedHTMLAttributes & {
1241
+ htmlProps?: Omit<react.InputHTMLAttributes<HTMLInputElement>, "name" | "aria-describedby" | "onBlur" | "onChange" | "defaultChecked" | "defaultValue" | "value" | "checked"> | undefined;
1242
+ } & react.RefAttributes<HTMLInputElement>>;
1243
+
1244
+ type Direction = 'row' | 'column';
1245
+ type ToggleButtonGroupProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1246
+ /** Ledetekst for gruppen. */
1247
+ label?: string;
1248
+ /**Retningen barna legger seg i. */
1249
+ direction?: Direction;
1250
+ /** Custom `id` for ledetekst. Blir generert som default for å knytte ledetekst til gruppen. */
1251
+ labelId?: string;
1252
+ }>;
1253
+ declare const ToggleButtonGroup: {
1254
+ (props: ToggleButtonGroupProps): react_jsx_runtime.JSX.Element;
1255
+ displayName: string;
1256
+ };
1257
+
1258
+ type ToggleButtonProps = BaseComponentProps<HTMLInputElement, {
1259
+ /**Ledetekst for inputelementet. */
1260
+ label?: string;
1261
+ /** Ikon. */
1262
+ icon?: SvgIcon;
1263
+ } & CheckboxPickedHTMLAttributes, Omit<InputHTMLAttributes<HTMLInputElement>, keyof CheckboxPickedHTMLAttributes>>;
1264
+
1265
+ type TabsProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1266
+ /** Indeksen til den aktive fanen. **OBS!** Ved å sette denne vil brukere aldri kunne endre tab uten at du også registrerer en `onChange`-lytter for å ta vare på aktiv tab utenfor komponenten. */
1267
+ activeTab?: number;
1268
+ /** Ekstra logikk ved endring av aktiv fane. */
1269
+ onChange?: (index: number) => void;
1270
+ /** Retningen ikon og tekst vises i `<Tab />`-elementer. */
1271
+ tabContentDirection?: Direction$1;
1272
+ /**Bredde for hele komponenten. */
1273
+ width?: Property.Width;
1274
+ }, Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>>;
1275
+ declare const Tabs: react.ForwardRefExoticComponent<Pick<Omit<HTMLAttributes<HTMLDivElement>, "onChange">, "className" | "id"> & {
1276
+ /** Indeksen til den aktive fanen. **OBS!** Ved å sette denne vil brukere aldri kunne endre tab uten at du også registrerer en `onChange`-lytter for å ta vare på aktiv tab utenfor komponenten. */
1277
+ activeTab?: number | undefined;
1278
+ /** Ekstra logikk ved endring av aktiv fane. */
1279
+ onChange?: ((index: number) => void) | undefined;
1280
+ /** Retningen ikon og tekst vises i `<Tab />`-elementer. */
1281
+ tabContentDirection?: Direction$1 | undefined;
1282
+ /**Bredde for hele komponenten. */
1283
+ width?: Property.Width<0 | (string & {})> | undefined;
1284
+ } & {
1285
+ children?: react.ReactNode;
1286
+ } & {
1287
+ htmlProps?: Omit<HTMLAttributes<HTMLDivElement>, "onChange"> | undefined;
1288
+ } & react.RefAttributes<HTMLDivElement>>;
1289
+
1290
+ type TabProps = BaseComponentPropsWithChildren<HTMLButtonElement, {
1291
+ /**Spesifiserer om fanen er aktiv. */
1292
+ active?: boolean;
1293
+ /** Ikon. */
1294
+ icon?: SvgIcon;
1295
+ /** Spesifiserer om `<Tab />` skal ha fokus. **OBS!** settes automatisk av forelder.*/
1296
+ focus?: boolean;
1297
+ /** Callback som setter fokus. **OBS!** settes automatisk av forelder.*/
1298
+ setFocus?: Dispatch<SetStateAction<number>>;
1299
+ /** Indeksen til `<Tab />`. **OBS!** settes automatisk av forelder.*/
1300
+ index?: number;
1301
+ } & Pick<ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'onKeyDown'>, Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'onClick' | 'onKeyDown'>>;
1302
+ declare const Tab: react.ForwardRefExoticComponent<Pick<Omit<ButtonHTMLAttributes<HTMLButtonElement>, "onKeyDown" | "onClick">, "className" | "id"> & {
1303
+ /**Spesifiserer om fanen er aktiv. */
1304
+ active?: boolean | undefined;
1305
+ /** Ikon. */
1306
+ icon?: SvgIcon | undefined;
1307
+ /** Spesifiserer om `<Tab />` skal ha fokus. **OBS!** settes automatisk av forelder.*/
1308
+ focus?: boolean | undefined;
1309
+ /** Callback som setter fokus. **OBS!** settes automatisk av forelder.*/
1310
+ setFocus?: Dispatch<SetStateAction<number>> | undefined;
1311
+ /** Indeksen til `<Tab />`. **OBS!** settes automatisk av forelder.*/
1312
+ index?: number | undefined;
1313
+ } & Pick<ButtonHTMLAttributes<HTMLButtonElement>, "onKeyDown" | "onClick"> & {
1314
+ children?: react.ReactNode;
1315
+ } & {
1316
+ htmlProps?: Omit<ButtonHTMLAttributes<HTMLButtonElement>, "onKeyDown" | "onClick"> | undefined;
1317
+ } & react.RefAttributes<HTMLButtonElement>>;
1318
+
1319
+ type TabListProps = HTMLAttributes<HTMLDivElement>;
1320
+ declare const TabList: react.ForwardRefExoticComponent<TabListProps & react.RefAttributes<HTMLDivElement>>;
1321
+
1322
+ type TabPanelProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1323
+ /** Spesifiserer om panelet skal vises basert på aktiv fane. */
1324
+ active?: boolean;
1325
+ }>;
1326
+ declare const TabPanel: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
1327
+ /** Spesifiserer om panelet skal vises basert på aktiv fane. */
1328
+ active?: boolean | undefined;
1329
+ } & {
1330
+ children?: react.ReactNode;
1331
+ } & {
1332
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1333
+ } & react.RefAttributes<HTMLDivElement>>;
1334
+
1335
+ type TabPanelsProps = HTMLAttributes<HTMLDivElement>;
1336
+ declare const TabPanels: react.ForwardRefExoticComponent<TabPanelsProps & react.RefAttributes<HTMLDivElement>>;
1337
+
1338
+ type TagPurpose = 'success' | 'info' | 'danger' | 'warning' | 'default';
1339
+ type TagProps = BaseComponentProps<HTMLSpanElement, {
1340
+ /**Tekst som vises i `<Tag />.` */
1341
+ text?: string;
1342
+ /**Formål med status eller kategorisering. Påvirker styling. */
1343
+ purpose?: TagPurpose;
1344
+ }>;
1345
+ declare const Tag: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLSpanElement>, "className" | "id"> & {
1346
+ /**Tekst som vises i `<Tag />.` */
1347
+ text?: string | undefined;
1348
+ /**Formål med status eller kategorisering. Påvirker styling. */
1349
+ purpose?: TagPurpose | undefined;
1350
+ } & {
1351
+ htmlProps?: react.HTMLAttributes<HTMLSpanElement> | undefined;
1352
+ } & react.RefAttributes<HTMLSpanElement>>;
1353
+
1354
+ type ChipProps = BaseComponentProps<HTMLDivElement, {
1355
+ /** Teksten som vises i komponenten. */
1356
+ text?: string;
1357
+ /** Ekstra logikk når `<Chip />` lukkes. */
1358
+ onClose?: () => void;
1359
+ }>;
1360
+ declare const Chip: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & {
1361
+ /** Teksten som vises i komponenten. */
1362
+ text?: string | undefined;
1363
+ /** Ekstra logikk når `<Chip />` lukkes. */
1364
+ onClose?: (() => void) | undefined;
1365
+ } & {
1366
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1367
+ } & react.RefAttributes<HTMLDivElement>>;
1368
+
1369
+ type ChipGroupProps = HTMLAttributes<HTMLUListElement>;
1370
+ declare const ChipGroup: react.ForwardRefExoticComponent<ChipGroupProps & react.RefAttributes<HTMLUListElement>>;
1371
+
1372
+ type VisuallyHiddenDivProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1373
+ as: 'div';
1374
+ }>;
1375
+ type VisuallyHiddenSpanProps = BaseComponentPropsWithChildren<HTMLSpanElement, {
1376
+ /**Spesifiserer hvilken HTML tag skal returneres. */
1377
+ as: 'span';
1378
+ }>;
1379
+ type VisuallyHiddenProps = VisuallyHiddenSpanProps | VisuallyHiddenDivProps;
1380
+ declare const VisuallyHidden: {
1381
+ (props: VisuallyHiddenProps): react_jsx_runtime.JSX.Element;
1382
+ displayName: string;
1383
+ };
1384
+
1385
+ type ScrollbarProps = BaseComponentProps<HTMLDivElement, {
1386
+ /** Ref til container med innholdet som skal scrolles. */
1387
+ contentRef?: RefObject<HTMLDivElement>;
1388
+ }>;
1389
+ declare const Scrollbar: {
1390
+ (props: ScrollbarProps): react_jsx_runtime.JSX.Element | null;
1391
+ displayName: string;
1392
+ };
1393
+
1394
+ type ScrollableContainerProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1395
+ /**Høyde på innholdscontainer. */
1396
+ contentHeight?: Property.Height;
1397
+ }>;
1398
+ declare const ScrollableContainer: {
1399
+ (props: ScrollableContainerProps): react_jsx_runtime.JSX.Element;
1400
+ displayName: string;
1401
+ };
1402
+
1403
+ /**
1404
+ * CSS-in-JS scrollbar styling til bruk der det ikke passer å bruke dedikerte komponenter. Inkluderer styling for webkit pseudo-elementer og for Firefox.
1405
+ */
1406
+ declare const scrollbarStyling: {
1407
+ webkit: {
1408
+ '&::-webkit-scrollbar': {
1409
+ width: string;
1410
+ height: string;
1411
+ };
1412
+ '&::-webkit-scrollbar-track': {
1413
+ background: string;
1414
+ borderRadius: string;
1415
+ };
1416
+ '&::-webkit-scrollbar-thumb': {
1417
+ background: string;
1418
+ borderRadius: string;
1419
+ };
1420
+ };
1421
+ '&::-webkit-scrollbar-thumb:hover': {
1422
+ background: string;
1423
+ };
1424
+ firefox: {
1425
+ scrollbarColor: string;
1426
+ scrollbarWidth: "thin";
1427
+ };
1428
+ };
1429
+
1430
+ type ToggleBarValue = string | number | null | undefined;
1431
+ type ToggleBarSize = 'tiny' | 'small' | 'medium' | 'large';
1432
+ type ToggleBarProps<T extends string | number> = BaseComponentPropsWithChildren<HTMLDivElement, {
1433
+ /**Størrelse på komponenten. */
1434
+ size?: ToggleBarSize;
1435
+ /**Ledetekst for hele gruppen. */
1436
+ label?: string;
1437
+ /**Funksjonen for `onChange`-event for barna. */
1438
+ onChange?: (event: ChangeEvent<HTMLInputElement>, value?: T) => void;
1439
+ /**Den valgte verdien i gruppen. Hvis satt ved innlastning blir en `<ToggleRadio />` forhåndsvalgt. */
1440
+ value?: T;
1441
+ /** Gir alle barna samme `name` prop.*/
1442
+ name?: string;
1443
+ /**Bredden til komponenten. Bredden fordeles likt mellom barna. */
1444
+ width?: Property.Width;
1445
+ }>;
1446
+
1447
+ declare const ToggleBar: {
1448
+ <T extends string | number = string>(props: ToggleBarProps<T>): react_jsx_runtime.JSX.Element;
1449
+ displayName: string;
1450
+ };
1451
+
1452
+ type PickedInputHTMLAttributes = Pick<InputHTMLAttributes<HTMLInputElement>, 'name' | 'checked' | 'value' | 'onChange' | 'aria-label' | 'aria-labelledby'>;
1453
+ type ToggleRadioProps = BaseComponentProps<HTMLInputElement, {
1454
+ /**Ledetekst som vises i komponenten. */
1455
+ label?: string;
1456
+ /**Ikonet som vises i komponenten. */
1457
+ icon?: SvgIcon;
1458
+ } & PickedInputHTMLAttributes, Omit<InputHTMLAttributes<HTMLInputElement>, keyof PickedInputHTMLAttributes>>;
1459
+ declare const ToggleRadio: react.ForwardRefExoticComponent<Pick<Omit<InputHTMLAttributes<HTMLInputElement>, "name" | "aria-label" | "aria-labelledby" | "onChange" | "value" | "checked">, "className" | "id"> & {
1460
+ /**Ledetekst som vises i komponenten. */
1461
+ label?: string | undefined;
1462
+ /**Ikonet som vises i komponenten. */
1463
+ icon?: SvgIcon | undefined;
1464
+ } & PickedInputHTMLAttributes & {
1465
+ htmlProps?: Omit<InputHTMLAttributes<HTMLInputElement>, "name" | "aria-label" | "aria-labelledby" | "onChange" | "value" | "checked"> | undefined;
1466
+ } & react.RefAttributes<HTMLInputElement>>;
1467
+
1468
+ type RowGapGrid = BreakpointBasedProps<'rowGap'>;
1469
+ type MaxWidthGrid = BreakpointBasedProps<'maxWidth'>;
1470
+ type BaseGridProps = {
1471
+ /**Maksimal bredde. Gjøres per brekkepunkt. */
1472
+ maxWidth?: MaxWidthGrid;
1473
+ /** CSS `row-gap`. Gjøres per brekkepunkt. */
1474
+ rowGap?: RowGapGrid;
1475
+ } & Pick<HTMLAttributes<HTMLElement>, 'style'>;
1476
+ type GridDivProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1477
+ /**HTML tag som returneres. */
1478
+ as: 'div';
1479
+ } & BaseGridProps>;
1480
+ type GridFormProps = BaseComponentPropsWithChildren<HTMLFormElement, {
1481
+ as: 'form';
1482
+ } & BaseGridProps>;
1483
+ type GridProps = GridDivProps | GridFormProps;
1484
+ declare const Grid: {
1485
+ (props: GridProps): react_jsx_runtime.JSX.Element;
1486
+ displayName: string;
1487
+ };
1488
+
1489
+ declare const isRelativeGridColumn: (type: ColumnsOccupied | undefined) => type is RelativeColumnsOccupied;
1490
+ declare const isGridColumn: (type: ColumnsOccupied | undefined) => type is GridColumnPerScreenSize;
1491
+ type RelativeColumnsOccupied = 'all' | 'firstHalf' | 'secondHalf';
1492
+ type GridColumnPerScreenSize = BreakpointBasedProps<'gridColumn'>;
1493
+ type ColumnsOccupied = RelativeColumnsOccupied | GridColumnPerScreenSize;
1494
+ type GridChildProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1495
+ /**hvilke kolonner innholdet skal okkupere. Tar inn enten en string med relativ definisjon eller et objekt med egentilpassede `grid-column` CSS verdi definert for hver brekkepunkt. */
1496
+ columnsOccupied?: ColumnsOccupied;
1497
+ /**Plassering av innholdet på x-aksen. */
1498
+ justifySelf?: Property.JustifySelf;
1499
+ /**Hvilke rader innholdet skal okkupere. */
1500
+ gridRow?: Property.GridRow;
1501
+ }> & Pick<HTMLAttributes<HTMLElement>, 'style'>;
1502
+ declare const GridChild: {
1503
+ (props: GridChildProps): react_jsx_runtime.JSX.Element;
1504
+ displayName: string;
1505
+ };
1506
+
1507
+ type BaseItemProps = {
1508
+ /** Om steget er valgt eller ikke. Settes av konsument. */
1509
+ active?: boolean;
1510
+ /** Om steget er ferdig eller ikke. Settes av konsument. */
1511
+ completed?: boolean;
1512
+ /** Om steget skal være disabled. Settes av konsument.
1513
+ * @default false
1514
+ */
1515
+ disabled?: boolean;
1516
+ /** Ikon som skal vises istedenfor stegnummeret. Settes av konument. */
1517
+ icon?: SvgIcon;
1518
+ /** Indeksen til steget. NB! Denne settes automatisk av `<ProgressTracker />` og skal ikke settes manuelt. */
1519
+ index?: number;
1520
+ };
1521
+ type ProgressTrackerItemProps = ({
1522
+ /** Click-handler som gjør det mulig for bruker å klikke på steget for å navigere. Valgfri. */
1523
+ onClick: (index: number) => void;
1524
+ } & BaseComponentPropsWithChildren<HTMLButtonElement, BaseItemProps>) | ({
1525
+ onClick?: undefined;
1526
+ } & BaseComponentPropsWithChildren<HTMLDivElement, BaseItemProps>);
1527
+ declare const ProgressTrackerItem: {
1528
+ (props: ProgressTrackerItemProps): react_jsx_runtime.JSX.Element;
1529
+ displayName: string;
1530
+ };
1531
+
1532
+ type ProgressTrackerProps = BaseComponentPropsWithChildren<HTMLDivElement, {
1533
+ /** Indeksen til det aktive steget. */
1534
+ activeStep?: number;
1535
+ /** Ekstra logikk ved klikking på et steg. */
1536
+ onStepChange?: (step: number) => void;
1537
+ }>;
1538
+ type ProgressTrackerComponent = ForwardRefExoticComponent<ProgressTrackerProps> & {
1539
+ Item: typeof ProgressTrackerItem;
1540
+ };
1541
+ declare const ProgressTracker: ProgressTrackerComponent;
1542
+
1543
+ type BaseInlineInputProps = {
1544
+ /**Spesifiserer error state. Hvis `errorMessage` ikke brukes må inputfeltet knyttes med ARIA til en feilmelding som vises andre steder i applikasjonen. */
1545
+ error?: boolean;
1546
+ /**Feilmelding. Setter også error state. */
1547
+ errorMessage?: string;
1548
+ /** Bredde på komponenten. */
1549
+ width?: Property.Width;
1550
+ /**Om redigeringsikonet skal vises. */
1551
+ hideIcon?: boolean;
1552
+ /** **OBS!** settes automatisk av forelder. Spesifiserer om brukeren kan tømme inputfeltet. */
1553
+ emptiable?: boolean;
1554
+ /** **OBS!** settes automatisk av forelder. Spesifiserer om komponenten er i redigeringsmodus. */
1555
+ isEditing?: boolean;
1556
+ };
1557
+ type InlineEditProps = {
1558
+ /**Callback for når verdien blir lagret. */
1559
+ onSetValue?: (value: string) => void;
1560
+ /** Ref til barnet. */
1561
+ inputRef: RefObject<HTMLElement>;
1562
+ /** Barn (inputelementet). */
1563
+ children: ReactNode;
1564
+ /**Spesifiserer om brukeren kan tømme inputfeltet. */
1565
+ emptiable?: boolean;
1566
+ /**Ekstra callback ved `onChange`-event. */
1567
+ onChange?: () => void;
1568
+ /**Ekstra callback ved `onFocus`-event. */
1569
+ onFocus?: () => void;
1570
+ /**Ekstra callback ved `onBlur`-event. */
1571
+ onBlur?: () => void;
1572
+ } & Pick<InputHTMLAttributes<HTMLInputElement>, 'value'>;
1573
+ type CommonInlineEditWrapperProps = Pick<InlineEditProps, 'onSetValue' | 'emptiable' | 'onBlur' | 'onFocus' | 'onChange'> & Pick<BaseInlineInputProps, 'error' | 'errorMessage' | 'width' | 'hideIcon'>;
1574
+ type InlineEditTextAreaProps = Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'onChange' | 'onFocus' | 'onBlur'> & CommonInlineEditWrapperProps;
1575
+ type InlineEditInputProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'width' | 'onChange' | 'onFocus' | 'onBlur'> & CommonInlineEditWrapperProps;
1576
+
1577
+ declare const InlineEditTextArea: react.ForwardRefExoticComponent<Omit<react.TextareaHTMLAttributes<HTMLTextAreaElement>, "onFocus" | "onBlur" | "onChange"> & Pick<InlineEditProps, "onFocus" | "onBlur" | "onChange" | "onSetValue" | "emptiable"> & Pick<BaseInlineInputProps, "width" | "error" | "errorMessage" | "hideIcon"> & react.RefAttributes<HTMLTextAreaElement>>;
1578
+
1579
+ declare const InlineEditInput: react.ForwardRefExoticComponent<Omit<react.InputHTMLAttributes<HTMLInputElement>, "width" | "onFocus" | "onBlur" | "onChange"> & Pick<InlineEditProps, "onFocus" | "onBlur" | "onChange" | "onSetValue" | "emptiable"> & Pick<BaseInlineInputProps, "width" | "error" | "errorMessage" | "hideIcon"> & react.RefAttributes<HTMLInputElement>>;
1580
+
1581
+ declare const StyledTextArea: styled_components.StyledComponent<"input", any, Pick<_norges_domstoler_dds_form.InputProps, "disabled" | "readOnly"> & {
1582
+ hasErrorMessage: boolean;
1583
+ } & {
1584
+ prefixLength?: number | undefined;
1585
+ suffixLength?: number | undefined;
1586
+ } & Pick<_norges_domstoler_dds_form.InputProps, "componentSize">, never>;
1587
+ type TextAreaProps = CommonInputProps & TextareaHTMLAttributes<HTMLTextAreaElement>;
1588
+ declare const TextArea: react.ForwardRefExoticComponent<CommonInputProps & TextareaHTMLAttributes<HTMLTextAreaElement> & react.RefAttributes<HTMLTextAreaElement>>;
1589
+
1590
+ type SplitButtonPurpose = ExtractStrict<ButtonPurpose, 'primary' | 'secondary'>;
1591
+ type SplitButtonProps = {
1592
+ /**Størrelse på komponenten. */
1593
+ size?: ButtonSize;
1594
+ /**Props for primær handling. Samme props som for `<Button />` unntatt `size`, `purpose`, og `appearance`. */
1595
+ primaryAction: Omit<ButtonProps$1, 'size' | 'apperance' | 'purpose'>;
1596
+ /**Props for sekunære handlinger. */
1597
+ secondaryActions: OverflowMenuButtonItem[];
1598
+ /**Formål med knappen */
1599
+ purpose?: SplitButtonPurpose;
1600
+ };
1601
+ declare const SplitButton: react.ForwardRefExoticComponent<SplitButtonProps & react.RefAttributes<HTMLDivElement>>;
1602
+
1603
+ declare const stackTokens: {
1604
+ spacing: {
1605
+ 'local-x0.125': string;
1606
+ 'local-x0.25': string;
1607
+ 'local-x0.5': string;
1608
+ 'local-x0.75': string;
1609
+ 'local-x1': string;
1610
+ 'local-x1.5': string;
1611
+ 'local-x2': string;
1612
+ 'local-x2.5': string;
1613
+ 'local-x3': string;
1614
+ 'layout-x1': string;
1615
+ 'layout-x1.5': string;
1616
+ 'layout-x2': string;
1617
+ 'layout-x3': string;
1618
+ 'layout-x4': string;
1619
+ 'layout-x6': string;
1620
+ 'layout-x10': string;
1621
+ };
1622
+ };
1623
+
1624
+ interface StackStyleProps {
1625
+ /**
1626
+ * Hvilken retning elementene skal plasseres i.
1627
+ */
1628
+ direction: 'horizontal' | 'vertical';
1629
+ /**
1630
+ * CSS `align-items`.
1631
+ * @default 'center'
1632
+ */
1633
+ align?: StandardProperties['alignItems'];
1634
+ /**
1635
+ * CSS `justify-content`.
1636
+ * @default 'flex-start'
1637
+ */
1638
+ justify?: StandardProperties['justifyContent'];
1639
+ /**
1640
+ * Hvilken spacing token som skal brukes som CSS `gap`.
1641
+ */
1642
+ gap?: keyof typeof stackTokens.spacing | 0;
1643
+ /**
1644
+ * Hvilken spacing token som skal brukes som CSS `padding`.
1645
+ */
1646
+ padding?: keyof typeof stackTokens.spacing | 0;
1647
+ }
1648
+ type StackProps = BaseComponentPropsWithChildren<HTMLDivElement, Omit<StackStyleProps, 'direction'>>;
1649
+ declare const HStack: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & Omit<StackStyleProps, "direction"> & {
1650
+ children?: react.ReactNode;
1651
+ } & {
1652
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1653
+ } & react.RefAttributes<HTMLDivElement>>;
1654
+ declare const VStack: react.ForwardRefExoticComponent<Pick<react.HTMLAttributes<HTMLDivElement>, "className" | "id"> & Omit<StackStyleProps, "direction"> & {
1655
+ children?: react.ReactNode;
1656
+ } & {
1657
+ htmlProps?: react.HTMLAttributes<HTMLDivElement> | undefined;
1658
+ } & react.RefAttributes<HTMLDivElement>>;
1659
+
1660
+ type FileExtensionAccept = `.${string}`;
1661
+ type AnyMimeType = '*';
1662
+ type ImageMimeType = 'png' | 'jpeg' | 'bmp' | 'gif' | 'svg+xml' | 'tiff' | 'webp';
1663
+ type VideoMimeType = 'x-msvideo' | 'mp4' | 'mpeg' | 'ogg' | 'mp2t' | 'webm' | '3gpp' | '3gpp2';
1664
+ type AudioMimeType = 'aac' | 'midi' | 'x-midi' | 'mpeg' | 'ogg' | 'opus' | 'wav' | 'webm' | '3gpp' | '3gpp2';
1665
+ type ApplicationMimeType = 'octet-stream' | 'msword' | 'vnd.openxmlformats-officedocument.wordprocessingml.document' | 'epub+zip' | 'gzip' | 'java-archive' | 'json' | 'vnd.oasis.opendocument.presentation' | 'vnd.oasis.opendocument.spreadsheet' | 'vnd.oasis.opendocument.text' | 'pdf' | 'vnd.ms-powerpoint' | 'vnd.openxmlformats-officedocument.presentationml.presentation' | 'rtf' | 'x-sh' | 'x-tar' | 'vnd.visio' | 'xhtml+xml' | 'vnd.ms-excel' | 'vnd.openxmlformats-officedocument.spreadsheetml.sheet' | 'xml' | 'vnd.mozilla.xul+xml' | 'zip';
1666
+ type MimeType = `image/${ImageMimeType | AnyMimeType}` | `video/${VideoMimeType | AnyMimeType}` | `audio/${AudioMimeType | AnyMimeType}` | `application/${ApplicationMimeType}`;
1667
+ type Accept = MimeType | FileExtensionAccept;
1668
+ type FileList = File[];
1669
+
1670
+ type FileUploaderHookProps = {
1671
+ id: string | undefined;
1672
+ /**Dersom komponenten skal styres internt. Utgangspunktet for filene som har blitt lastet opp. */
1673
+ initialFiles: FileList | undefined;
1674
+ /**Dersom komponenten styres utenfra. Filene som har blitt lastet opp. */
1675
+ value: FileList | undefined;
1676
+ /**Callback for når fil-listen endres. */
1677
+ onChange: (newFiles: FileList) => void;
1678
+ /**Hvilke filendelser eller mime-typer som filopplasteren skal akseptere. */
1679
+ accept: Accept[] | undefined;
1680
+ /**Om filopplasteren er avslått eller ikke */
1681
+ disabled: boolean | undefined;
1682
+ /**Maks antall filer som tillates. */
1683
+ maxFiles: number | undefined;
1684
+ /**Feilmelding. Setter også error state. */
1685
+ errorMessage: string | undefined;
1686
+ };
1687
+
1688
+ type FileUploaderProps = {
1689
+ /**Id til filopplasteren. */
1690
+ id?: string;
1691
+ /**Ledetekst for filopplaster. */
1692
+ label?: string;
1693
+ /**Hjelpetekst. */
1694
+ tip?: string;
1695
+ /**Om det er påkrevd med minst en fil. */
1696
+ required?: boolean;
1697
+ /**Callback for når fil-listen endres. */
1698
+ onChange: (newFiles: FileList) => void;
1699
+ /**Bredde for filopplasteren. */
1700
+ width?: Property.Width<string>;
1701
+ } & Partial<FileUploaderHookProps>;
1702
+ declare const FileUploader: {
1703
+ (props: FileUploaderProps): react_jsx_runtime.JSX.Element;
1704
+ displayName: string;
1705
+ };
1706
+
1707
+ type EmptyContentProps = {
1708
+ title?: string;
1709
+ message: string;
1710
+ } & HTMLAttributes<HTMLDivElement>;
1711
+ declare function EmptyContent({ title, message, ...rest }: EmptyContentProps): react_jsx_runtime.JSX.Element;
1712
+ declare namespace EmptyContent {
1713
+ var displayName: string;
1714
+ }
1715
+
1716
+ type BackLinkProps = {
1717
+ label: string;
1718
+ href: string;
1719
+ };
1720
+ declare const BackLink: react.ForwardRefExoticComponent<BackLinkProps & react.RefAttributes<HTMLElement>>;
1721
+
1722
+ type FeedbackProps = {
1723
+ /**Om knappene skal være plassert under eller ved siden av teksten. */
1724
+ layout?: Layout;
1725
+ /**Label som er plassert over tommel opp/ned knappene */
1726
+ ratingLabel: string;
1727
+ /**Label til fritekstfeltet når bruker har gitt tommel opp */
1728
+ positiveFeedbackLabel?: string;
1729
+ /**Label til fritekstfeltet når bruker har gitt tommel ned */
1730
+ negativeFeedbackLabel?: string;
1731
+ /**Tittel som vises når bruker har gitt tommel opp/ned, og enda ikke sendt inn kommentar */
1732
+ ratingSubmittedTitle?: string;
1733
+ /**Tittel som vises når bruker har gitt feedback (inkl. eventuell kommentar) */
1734
+ submittedTitle?: string;
1735
+ /**Om tommel opp eller ned er valgt. Brukes når komponenten skal være styrt utenfra. */
1736
+ ratingValue?: Rating | null;
1737
+ /**Verdien til fritekstfeltet. Brukes når komponenten skal være styrt utenfra. */
1738
+ feedbackTextValue?: string;
1739
+ /**Tooltip-teksten til tommel-opp-knappen*/
1740
+ thumbUpTooltip?: string;
1741
+ /**Tooltip-teksten til tommel-ned-knappen*/
1742
+ thumbDownTooltip?: string;
1743
+ /**Om tilbakemeldingskomponenten skal ekskludere fritekstfeltet (i.e. kun ha tommel opp/ned).*/
1744
+ feedbackTextAreaExcluded?: boolean;
1745
+ /**Om knappene skal vise spinner. Gjelder både tommel opp/ned knappene, og "send inn" knappen. */
1746
+ loading?: boolean;
1747
+ /**Om tilbakemelding er sendt inn. Brukes når komponenten skal være styrt utenfra. */
1748
+ isSubmitted?: boolean;
1749
+ /**Callback når bruker har gitt tommelrating */
1750
+ onRating?: (rating: Rating) => void;
1751
+ /**Callback når bruker skriver noe i fritekstfeltet */
1752
+ onFeedbackTextChange?: (feedbackText: string) => void;
1753
+ /**Callback når bruker sender inn feedback */
1754
+ onSubmit?: (rating: Rating, feedbackText: string) => void;
1755
+ };
1756
+ type Rating = 'positive' | 'negative';
1757
+ type Layout = 'vertical' | 'horizontal';
1758
+
1759
+ declare const Feedback: ({ layout, ratingLabel, positiveFeedbackLabel, negativeFeedbackLabel, ratingSubmittedTitle, submittedTitle, ratingValue: ratingProp, feedbackTextValue: feedbackTextProp, thumbUpTooltip, thumbDownTooltip, feedbackTextAreaExcluded, loading, isSubmitted: isSubmittedProp, onRating, onFeedbackTextChange, onSubmit, }: FeedbackProps) => react_jsx_runtime.JSX.Element;
1760
+
1761
+ export { AppShell, AppShellProps, BackLink, BackLinkProps, Breadcrumb, BreadcrumbProps, Breadcrumbs, BreadcrumbsProps, Button, ButtonAppearance, ButtonProps$1 as ButtonProps, ButtonPurpose, ButtonSize, Card, CardAccordion, CardAccordionBody, CardAccordionBodyProps, CardAccordionHeader, CardAccordionHeaderProps, CardAccordionProps, CardColor, CardProps, CardType, Checkbox, CheckboxGroup, CheckboxGroupProps, CheckboxPickedHTMLAttributes, CheckboxProps, Chip, ChipGroup, ChipGroupProps, ChipProps, CollapsibleTable, CollapsibleTableProps, ColumnsOccupied, Container, Datepicker, DatepickerProps, DescriptionList, DescriptionListAppearance, DescriptionListDesc, DescriptionListDescProps, DescriptionListGroup, DescriptionListGroupProps, DescriptionListProps, DescriptionListTerm, DescriptionListTermProps, Divider, DividerColor, DividerProps, Drawer, DrawerGroup, DrawerGroupProps, DrawerPlacement, DrawerProps, DrawerSize, EmptyContent, EmptyContentProps, ExpandableCardProps, Feedback, FeedbackProps, FileUploader, GlobalMessage, GlobalMessageProps, GlobalMessagePurpose, Grid, GridChild, GridChildProps, GridProps, HStack, IconPosition, InfoCardProps, InlineEditInput, InlineEditInputProps, InlineEditTextArea, InlineEditTextAreaProps, InputMessage, InputMessageProps, InputMessageType, InternalHeader, InternalHeaderProps, Layout, List, ListItem, ListItemProps, ListProps, ListType, ListTypographyType, LocalMessage, LocalMessageLayout, LocalMessageProps, LocalMessagePurpose, Modal, ModalActions, ModalActionsProps, ModalBody, ModalBodyProps, ModalProps, NavigationCardProps, OverflowMenu, OverflowMenuButtonItem, OverflowMenuContextItem, OverflowMenuGroup, OverflowMenuGroupProps, OverflowMenuLinkItem, OverflowMenuList, OverflowMenuNavItem, OverflowMenuProps, Pagination, PaginationOption, PaginationProps, Popover, PopoverGroup, PopoverGroupProps, PopoverProps, PopoverSizeProps, ProgressTracker, RadioButton, RadioButtonGroup, RadioButtonGroupProps, RadioButtonProps, Rating, ScrollableContainer, ScrollableContainerProps, Scrollbar, ScrollbarProps, Search, SearchAutocompleteWrapperProps, SearchData, SearchProps, SearchSize, SearchSuggestionsProps, Select, SelectOption, SelectProps, SkipToContent, SkipToContentProps, SortOrder, Spinner, SpinnerProps, SplitButton, SplitButtonProps, SplitButtonPurpose, StackProps, StackStyleProps, StyledTextArea, Tab, TabList, TabListProps, TabPanel, TabPanelProps, TabPanels, TabPanelsProps, TabProps, Table, TableBodyProps, TableCellLayout, TableCellProps, TableCellType, TableDensity, TableFootProps, TableHeadProps, TableProps, TableRowProps, TableRowType, TableSortCellProps, Tabs, TabsProps, Tag, TagProps, TagPurpose, TextAffixProps, TextArea, TextAreaProps, TextInput, TextInputProps, ToggleBar, ToggleBarProps, ToggleBarSize, ToggleBarValue, ToggleButton, ToggleButtonGroup, ToggleButtonGroupProps, ToggleButtonProps, ToggleRadio, ToggleRadioProps, Tooltip, TooltipProps, VStack, VisuallyHidden, VisuallyHiddenProps, WeightedSearchData, WidthProps, createSelectOptions, isGridColumn, isRelativeGridColumn, scrollbarStyling };