Start work on types
Bring in typings folder for adafruit_ble and micropython
This commit is contained in:
29
kmk/types.py
29
kmk/types.py
@@ -1,3 +1,8 @@
|
||||
from kmk.consts import UnicodeMode
|
||||
from kmk.keys import KeyAttrDict
|
||||
from typing import List, Optional
|
||||
|
||||
|
||||
class AttrDict(dict):
|
||||
'''
|
||||
Primitive support for accessing dictionary entries in dot notation.
|
||||
@@ -7,34 +12,34 @@ class AttrDict(dict):
|
||||
This is read-only on purpose.
|
||||
'''
|
||||
|
||||
def __getattr__(self, key):
|
||||
def __getattr__(self, key: str) -> str:
|
||||
return self[key]
|
||||
|
||||
|
||||
class LayerKeyMeta:
|
||||
def __init__(self, layer, kc=None):
|
||||
self.layer = layer
|
||||
self.kc = kc
|
||||
def __init__(self, layer: int, kc: Optional[KeyAttrDict] = None) -> None:
|
||||
self.layer: int = layer
|
||||
self.kc: Optional[KeyAttrDict] = kc
|
||||
|
||||
|
||||
class ModTapKeyMeta:
|
||||
def __init__(self, kc=None, mods=None):
|
||||
self.mods = mods
|
||||
self.kc = kc
|
||||
def __init__(self, kc: Optional[KeyAttrDict] = None, mods: Optional[List[KeyAttrDict]] = None):
|
||||
self.mods: Optional[List[KeyAttrDict]] = mods
|
||||
self.kc: Optional[KeyAttrDict] = kc
|
||||
|
||||
|
||||
class KeySequenceMeta:
|
||||
def __init__(self, seq):
|
||||
self.seq = seq
|
||||
def __init__(self, seq: List[KeyAttrDict]):
|
||||
self.seq: List[KeyAttrDict] = seq
|
||||
|
||||
|
||||
class KeySeqSleepMeta:
|
||||
def __init__(self, ms):
|
||||
self.ms = ms
|
||||
def __init__(self, ms: float):
|
||||
self.ms: float = ms
|
||||
|
||||
|
||||
class UnicodeModeKeyMeta:
|
||||
def __init__(self, mode):
|
||||
def __init__(self, mode: UnicodeMode):
|
||||
self.mode = mode
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user