# This file was generated by Nuitka

# Stubs included by default
from __future__ import annotations
from __future__ import annotations
from cryptography.exceptions import InvalidSignature
from cryptography.hazmat.primitives import hashes, serialization
from cryptography.hazmat.primitives.asymmetric import padding
from typing import Any
import base64
import json
import logging
import time

_PUBLIC_KEY_PEM = '-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA87dqGyH372G+mAQkvcmI\ncSwf5c2AywHT+0+WyfVUDSM3mpdFqZyfcgimsdklaGfzH5mOCbgohcASzwPA6Nuu\nX5svrY7l1+rh4uhx8oo4olDSQsyu1PCkGWrJ90jmAXSoee5e2ySzmbnY2o4QpVQR\nLHYAZAIrukaoBGX8NhTcSAW47sdyweXfmC6PDy6vTvWsp8+0oXxQKOfIbIZ8dbij\nLJojy0TufSkWxynogLNYEuvbN2gUGserPc7cvFNYHjFd4TW07eO4EHixfOmlUAvo\ngvJr6nmqss46TJbM80+vE4ax7dppVdu3rz60KNxZccQEpoOId0P5/Db8F9u8OkdC\niQIDAQAB\n-----END PUBLIC KEY-----\n'
_CRYPTO_AVAILABLE = True
_CRYPTO_AVAILABLE = False
def _b64url_decode(data: str) -> bytes:
    ...

def _b64url_encode(data: bytes) -> str:
    ...

def _load_public_key() -> Any:
    ...

def _parse_token_parts(token: str) -> tuple[str, bytes, bytes] | None:
    ...

def validate_token(token: str, machine_id: str) -> tuple[bool, dict[str, Any], str]:
    ...

def decode_token_payload(token: str) -> dict[str, Any] | None:
    ...

def generate_token_for_server(payload: dict[str, Any], private_key_pem: str) -> str:
    ...


__name__ = ...



# Modules used internally, to allow implicit dependencies to be seen:
import __future__
import base64
import json
import logging
import time
import typing
import cryptography
import cryptography.hazmat
import cryptography.hazmat.primitives
import cryptography.hazmat.primitives.hashes
import cryptography.hazmat.primitives.serialization
import cryptography.hazmat.primitives.asymmetric
import cryptography.hazmat.primitives.asymmetric.padding
import cryptography.exceptions