import { FieldTypeFactory, ComponentTypeFactory } from '@sentecacommerce-theme/base';
export var ConfigType = ComponentTypeFactory.create('Config', {
  apiUrl: FieldTypeFactory.text(),
  domain: FieldTypeFactory.text(),
  organizationPhone: FieldTypeFactory.text(),
  defaultMerchant: FieldTypeFactory.text(),
  favicon: {
    default: FieldTypeFactory.text(),
    svg: FieldTypeFactory.text(),
    medium: FieldTypeFactory.text()
  },
  price: {
    locale: FieldTypeFactory.text()
  },
  date: {
    locale: FieldTypeFactory.text()
  },
  theme: {
    palette: {
      primary: FieldTypeFactory.text(),
      secondary: FieldTypeFactory.text(),
      hint: FieldTypeFactory.text(),
      disabled: FieldTypeFactory.text(),
      light: FieldTypeFactory.text(),
      danger: FieldTypeFactory.text(),
      footerLine: FieldTypeFactory.text(),
      grey: FieldTypeFactory.text(),
      discount: FieldTypeFactory.text(),
      whiteSmoke: FieldTypeFactory.text()
    },
    breakpoints: {
      xs: {
        min: FieldTypeFactory.text(),
        max: FieldTypeFactory.text()
      },
      sm: {
        min: FieldTypeFactory.text(),
        max: FieldTypeFactory.text()
      },
      md: {
        min: FieldTypeFactory.text(),
        max: FieldTypeFactory.text()
      },
      lg: {
        min: FieldTypeFactory.text(),
        max: FieldTypeFactory.text()
      },
      xl: {
        min: FieldTypeFactory.text(),
        max: FieldTypeFactory.text()
      },
      xxl: {
        min: FieldTypeFactory.text()
      }
    },
    containers: {
      xs: FieldTypeFactory.text(),
      sm: FieldTypeFactory.text(),
      md: FieldTypeFactory.text(),
      lg: FieldTypeFactory.text(),
      xl: FieldTypeFactory.text(),
      xxl: FieldTypeFactory.text()
    },
    spacingBaseUnit: FieldTypeFactory.number(),
    elementsBorderRadius: FieldTypeFactory.number(),
    typography: {
      fontFamily: FieldTypeFactory.list({
        of: FieldTypeFactory.text()
      }),
      defaultSize: FieldTypeFactory.text(),
      defaultLineHeight: FieldTypeFactory.text()
    }
  },
  blogConfig: {
    key: FieldTypeFactory.text(),
    limit: FieldTypeFactory.number()
  },
  listing: {
    limit: FieldTypeFactory.number(),
    defaultSortKey: FieldTypeFactory.text()
  },
  imagesConfig: {
    ratio: {
      width: FieldTypeFactory.number(),
      height: FieldTypeFactory.number()
    },
    fallbackImage: FieldTypeFactory.image()
  },
  wishlist: {
    limit: FieldTypeFactory.number()
  },
  google: {
    id: FieldTypeFactory.text()
  },
  facebook: {
    appId: FieldTypeFactory.text()
  },
  countryCode: FieldTypeFactory.text(),
  attributeKeys: {
    size: FieldTypeFactory.text(),
    color: FieldTypeFactory.text()
  },
  customFieldKeys: {
    isNew: FieldTypeFactory.text(),
    isFeatured: FieldTypeFactory.text(),
    maxDiscountPercent: FieldTypeFactory.text()
  },
  assetKeys: {
    brandBackground: FieldTypeFactory.text(),
    brandWhiteLogo: FieldTypeFactory.text(),
    brandLogo: FieldTypeFactory.text()
  },
  categoryTreeConfig: {
    label: FieldTypeFactory.text(),
    aggregationType: FieldTypeFactory.text(),
    aggregationDefinition: FieldTypeFactory.text(),
    filterDefinition: FieldTypeFactory.text(),
    component: FieldTypeFactory.text(),
    order: FieldTypeFactory.number()
  },
  views: {
    auth: FieldTypeFactory.text(),
    storePickUp: FieldTypeFactory.text(),
    itemDesc: FieldTypeFactory.text(),
    bagModal: FieldTypeFactory.text(),
    subForProduct: FieldTypeFactory.text()
  },
  courierKeys: {
    econt: FieldTypeFactory.text(),
    speedy: FieldTypeFactory.text(),
    evropat: FieldTypeFactory.text()
  },
  integrationUrl: FieldTypeFactory.text(),
  globalLabels: {
    toastNotifications: {
      success: {
        subscribe: FieldTypeFactory.text(),
        unsubscribe: FieldTypeFactory.text(),
        activatedVoucher: FieldTypeFactory.text()
      }
    },
    errorMessages: {
      somethingWentWrong: FieldTypeFactory.text(),
      invalidCredentials: FieldTypeFactory.text(),
      emailAlreadyRegistered: FieldTypeFactory.text(),
      noResults: FieldTypeFactory.text()
    },
    infoMessages: {
      outOfStock: FieldTypeFactory.text(),
      maxQuantity: FieldTypeFactory.text(),
      sku: FieldTypeFactory.text(),
      default: FieldTypeFactory.text(),
      invalidData: FieldTypeFactory.text()
    },
    buttons: {
      selectSize: FieldTypeFactory.text(),
      changeSize: FieldTypeFactory.text(),
      chooseSize: FieldTypeFactory.text(),
      addToBag: FieldTypeFactory.text(),
      remove: FieldTypeFactory.text(),
      cancel: FieldTypeFactory.text(),
      delete: FieldTypeFactory.text(),
      set: FieldTypeFactory.text(),
      edit: FieldTypeFactory.text(),
      reset: FieldTypeFactory.text(),
      register: FieldTypeFactory.text(),
      login: FieldTypeFactory.text(),
      back: FieldTypeFactory.text(),
      save: FieldTypeFactory.text(),
      submit: FieldTypeFactory.text(),
      clear: FieldTypeFactory.text(),
      apply: FieldTypeFactory.text(),
      choose: FieldTypeFactory.text(),
      confirm: FieldTypeFactory.text(),
      checkout: FieldTypeFactory.text(),
      viewBag: FieldTypeFactory.text(),
      signIn: FieldTypeFactory.text(),
      facebookLogin: FieldTypeFactory.text(),
      googleLogin: FieldTypeFactory.text(),
      appleLogin: FieldTypeFactory.text(),
      guestCheckout: FieldTypeFactory.text(),
      addNewCompany: FieldTypeFactory.text(),
      makePrimary: FieldTypeFactory.text()
    },
    commonMessages: {
      defaultShippingAddr: FieldTypeFactory.text(),
      defaultBillingAddr: FieldTypeFactory.text(),
      store: FieldTypeFactory.text(),
      office: FieldTypeFactory.text(),
      emailAddress: FieldTypeFactory.text(),
      password: FieldTypeFactory.text(),
      brand: FieldTypeFactory.text(),
      pleaseFill: FieldTypeFactory.text(),
      symbols: FieldTypeFactory.text(),
      bgn: FieldTypeFactory.text(),
      favorites: FieldTypeFactory.text(),
      bag: FieldTypeFactory.text(),
      addedTo: FieldTypeFactory.text()
    },
    company: {
      editCompanyDetails: FieldTypeFactory.text(),
      companyName: FieldTypeFactory.text(),
      vatNumber: FieldTypeFactory.text(),
      invalidVat: FieldTypeFactory.text(),
      companyId: FieldTypeFactory.text(),
      recipient: FieldTypeFactory.text(),
      city: FieldTypeFactory.text(),
      street: FieldTypeFactory.text(),
      streetNum: FieldTypeFactory.text(),
      zipCode: FieldTypeFactory.text(),
      address: FieldTypeFactory.text()
    },
    forms: {
      firstName: FieldTypeFactory.text(),
      lastName: FieldTypeFactory.text(),
      dateOfBirth: FieldTypeFactory.text(),
      male: FieldTypeFactory.text(),
      female: FieldTypeFactory.text(),
      editPassword: FieldTypeFactory.text(),
      invalidPassword: FieldTypeFactory.text(),
      passwordNotMatching: FieldTypeFactory.text(),
      newDiffererntPassword: FieldTypeFactory.text(),
      passwordLength: FieldTypeFactory.text(),
      currentPassword: FieldTypeFactory.text(),
      newPasswordLabel: FieldTypeFactory.text(),
      passwordConfirm: FieldTypeFactory.text(),
      requiredField: FieldTypeFactory.text(),
      confirmPassword: FieldTypeFactory.text(),
      emailLabel: FieldTypeFactory.text(),
      invalidEmail: FieldTypeFactory.text(),
      updateEmail: FieldTypeFactory.text(),
      emailSecurityMsg: FieldTypeFactory.text(),
      addPhone: FieldTypeFactory.text(),
      invalidPhone: FieldTypeFactory.text(),
      phoneSecurity: FieldTypeFactory.text()
    },
    forgotPassword: {
      title: FieldTypeFactory.text(),
      receiveLinkMsg: FieldTypeFactory.text(),
      backToLogin: FieldTypeFactory.text(),
      enterEmailMsg: FieldTypeFactory.text(),
      orReturn: FieldTypeFactory.text(),
      logIn: FieldTypeFactory.text(),
      forgotYourPass: FieldTypeFactory.text()
    },
    productRestock: {
      title: FieldTypeFactory.text(),
      chooseSize: FieldTypeFactory.text(),
      chooseQuantity: FieldTypeFactory.text(),
      placeholders: {
        email: FieldTypeFactory.text(),
        size: FieldTypeFactory.text(),
        quantity: FieldTypeFactory.text()
      },
      GDPRNotice: FieldTypeFactory.text(),
      button: FieldTypeFactory.text(),
      done: FieldTypeFactory.text(),
      doneButton: FieldTypeFactory.text()
    },
    voucher: FieldTypeFactory.text()
  }
});
//# sourceMappingURL=config.type.js.map