"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from .basesdk import BaseSDK
from .sdkconfiguration import SDKConfiguration
from apideck_unify.apideck_customers import ApideckCustomers
from apideck_unify.orders import Orders
from apideck_unify.products import Products
from apideck_unify.stores import Stores
from typing import Optional


class Ecommerce(BaseSDK):
    orders: Orders
    products: Products
    customers: ApideckCustomers
    stores: Stores

    def __init__(
        self, sdk_config: SDKConfiguration, parent_ref: Optional[object] = None
    ) -> None:
        BaseSDK.__init__(self, sdk_config, parent_ref=parent_ref)
        self.sdk_configuration = sdk_config
        self._init_sdks()

    def _init_sdks(self):
        self.orders = Orders(self.sdk_configuration, parent_ref=self.parent_ref)
        self.products = Products(self.sdk_configuration, parent_ref=self.parent_ref)
        self.customers = ApideckCustomers(
            self.sdk_configuration, parent_ref=self.parent_ref
        )
        self.stores = Stores(self.sdk_configuration, parent_ref=self.parent_ref)
