# Documentation for Etekcity Smart Switches <!-- omit in toc -->

## Contents

<!-- markdownlint-disable MD051 -->

See each device class for available attributes and methods:

- [SwitchState Class](#pyvesync.base_devices.switch_base.SwitchState)
- [Etekcity Dimmer Switch EWD16](#pyvesync.devices.vesyncswitch.VeSyncDimmerSwitch)
- [Etekcity Wall Switch ESWL01 & ESWL03](#pyvesync.devices.vesyncswitch.VeSyncWallSwitch)
- [VeSyncSwitch Abstract Base Class](#pyvesync.base_devices.switch_base.VeSyncSwitch)

::: pyvesync.base_devices.switch_base.SwitchState
    options:
        toc_label: "SwitchState"
        filters:
            - "!^_.*"
        summary:
            functions: false
        group_by_category: true
        show_root_heading: true
        show_root_toc_entry: true
        show_category_heading: true
        show_source: true
        show_if_no_docstring: true
        inherited_members: true
        docstring_options:
            ignore_init_summary: true
        merge_init_into_class: true

::: pyvesync.devices.vesyncswitch.VeSyncWallSwitch
    options:
        toc_label: "VeSyncWall & 3-Way Switch"
        filters:
            - "!^_.*"
        summary:
            functions: false
        group_by_category: true
        show_root_heading: true
        show_root_toc_entry: true
        show_category_heading: true
        show_source: true
        show_if_no_docstring: true
        inherited_members: true
        docstring_options:
            ignore_init_summary: true
        merge_init_into_class: true

::: pyvesync.devices.vesyncswitch.VeSyncDimmerSwitch
    options:
        toc_label: "Etekcity Dimmer Switch"
        filters:
            - "!^_.*"
        summary:
            functions: false
        group_by_category: true
        show_root_heading: true
        show_root_toc_entry: true
        show_category_heading: true
        show_source: true
        show_if_no_docstring: true
        inherited_members: true
        docstring_options:
            ignore_init_summary: true
        merge_init_into_class: true

::: pyvesync.base_devices.switch_base.VeSyncSwitch
    options:
        toc_label: "VeSyncSwitch Base Device"
        filters:
            - "!^_.*"
        summary:
            functions: false
        group_by_category: true
        show_root_heading: true
        show_root_toc_entry: true
        show_category_heading: true
        show_source: true
        show_if_no_docstring: true
        inherited_members: true
        docstring_options:
            ignore_init_summary: true
        merge_init_into_class: true
