import type { ReactNode, FC } from 'react'
import { css } from 'styled-components/macro'

import type { Languages } from 'config/languages'
import { ClientIds } from 'config/clients/types'

type StyledCss = ReturnType<typeof css>

export type ClientConfig = {
  auth: {
    clientId: ClientIds,
  },
  background: FC<{ children: ReactNode }>,
  defaultLanguage?: Languages,
  description: string,
  name: string,
  privacyLink: string,
  styles: {
    input?: StyledCss,
    inputGroup?: StyledCss,
    loader?: StyledCss,
    logo: StyledCss,
    submitButton?: StyledCss,
  },
  title: string,
}
