mirror of
https://github.com/aljazceru/nutshell.git
synced 2025-12-20 10:34:20 +01:00
* add websockets for quote updates * add test (not working) * wip: emit events to everyone * wip: emit events to everyone * wip, lots of things broken but invoice callback works * wip * add wip files * tests almost passing * add task * refactor nut constants * startup fix * works with old mints * wip cli * fix mypy * remove automatic invoice test now with websockets * remove comment * better logging * send back response * add rate limiter to websocket * add rate limiter to subscriptions * refactor websocket ratelimit * websocket tests * subscription kinds * doesnt start * remove circular import * update * fix mypy * move test file in test because it fails if it runs later... dunno why * adjust websocket NUT-06 settings * local import and small fix * disable websockets in CLI if "no_check" is selected * move subscription test to where it was * check proof state with callback, add tests * tests: run mint fixture per module instead of per session * subscription command name fix * test per session again * update test race conditions * fix tests * clean up * tmp * fix db issues and remove cached secrets * fix tests * blindly try pipeline * remove comments * comments
26 lines
581 B
Python
26 lines
581 B
Python
from typing import Dict, Mapping, Protocol
|
|
|
|
from ..core.base import Method, MintKeyset, Unit
|
|
from ..core.db import Database
|
|
from ..lightning.base import LightningBackend
|
|
from ..mint.crud import LedgerCrud
|
|
from .events.events import LedgerEventManager
|
|
|
|
|
|
class SupportsKeysets(Protocol):
|
|
keyset: MintKeyset
|
|
keysets: Dict[str, MintKeyset]
|
|
|
|
|
|
class SupportsBackends(Protocol):
|
|
backends: Mapping[Method, Mapping[Unit, LightningBackend]] = {}
|
|
|
|
|
|
class SupportsDb(Protocol):
|
|
db: Database
|
|
crud: LedgerCrud
|
|
|
|
|
|
class SupportsEvents(Protocol):
|
|
events: LedgerEventManager
|