import { CamelCase } from './camel-case'; export interface SwAuthConfig { container?: HTMLElement; buttonStyles?: CSSObject; dropdownStyles?: CSSObject; containerStyles?: CSSObject; } export declare enum AttributesDefinitions { 'use-button-options' = "boolean", 'disable-create-new-user' = "boolean", 'partner-key' = "string", 'use-dev' = "boolean", 'hide-button' = "boolean" } declare type EnumKeys = keyof typeof AttributesDefinitions; export declare type SwElementAttributes = { [key in EnumKeys]: unknown | boolean | string | number; }; export declare type SwAttributes = { [K in keyof SwElementAttributes as CamelCase]: SwElementAttributes[K]; }; export interface ShadowRootConfig { cache: EmotionCache; root: HTMLElement; shadowRoot: HTMLElement; mountPoint: HTMLElement; } export declare type AttributeCallbackFn = (name: string, value: string, newVal: string) => void; export interface SwAuthButtonProps { attributes: SwAttributes; container: HTMLElement; buttonStyles?: CSSObject; dropdownStyles?: CSSObject; setAttrCallback: (fn: AttributeCallbackFn) => void; } export {};