mirror of
https://github.com/davidhalter/typeshed.git
synced 2026-02-25 02:57:14 +08:00
Re-organize directory structure (#4971)
See discussion in #2491 Co-authored-by: Ivan Levkivskyi <ilevkivskyi@dropbox.com>
This commit is contained in:
3
stubs/geoip2/METADATA.toml
Normal file
3
stubs/geoip2/METADATA.toml
Normal file
@@ -0,0 +1,3 @@
|
||||
version = "0.1"
|
||||
python2 = true
|
||||
requires = ["types-maxminddb"]
|
||||
0
stubs/geoip2/geoip2/__init__.pyi
Normal file
0
stubs/geoip2/geoip2/__init__.pyi
Normal file
27
stubs/geoip2/geoip2/database.pyi
Normal file
27
stubs/geoip2/geoip2/database.pyi
Normal file
@@ -0,0 +1,27 @@
|
||||
from types import TracebackType
|
||||
from typing import Optional, Sequence, Text, Type
|
||||
|
||||
from geoip2.models import ASN, ISP, AnonymousIP, City, ConnectionType, Country, Domain, Enterprise
|
||||
from maxminddb.reader import Metadata
|
||||
|
||||
_Locales = Optional[Sequence[Text]]
|
||||
|
||||
class Reader:
|
||||
def __init__(self, filename: Text, locales: _Locales = ..., mode: int = ...) -> None: ...
|
||||
def __enter__(self) -> Reader: ...
|
||||
def __exit__(
|
||||
self,
|
||||
exc_type: Optional[Type[BaseException]] = ...,
|
||||
exc_val: Optional[BaseException] = ...,
|
||||
exc_tb: Optional[TracebackType] = ...,
|
||||
) -> None: ...
|
||||
def country(self, ip_address: Text) -> Country: ...
|
||||
def city(self, ip_address: Text) -> City: ...
|
||||
def anonymous_ip(self, ip_address: Text) -> AnonymousIP: ...
|
||||
def asn(self, ip_address: Text) -> ASN: ...
|
||||
def connection_type(self, ip_address: Text) -> ConnectionType: ...
|
||||
def domain(self, ip_address: Text) -> Domain: ...
|
||||
def enterprise(self, ip_address: Text) -> Enterprise: ...
|
||||
def isp(self, ip_address: Text) -> ISP: ...
|
||||
def metadata(self) -> Metadata: ...
|
||||
def close(self) -> None: ...
|
||||
14
stubs/geoip2/geoip2/errors.pyi
Normal file
14
stubs/geoip2/geoip2/errors.pyi
Normal file
@@ -0,0 +1,14 @@
|
||||
from typing import Optional, Text
|
||||
|
||||
class GeoIP2Error(RuntimeError): ...
|
||||
class AddressNotFoundError(GeoIP2Error): ...
|
||||
class AuthenticationError(GeoIP2Error): ...
|
||||
|
||||
class HTTPError(GeoIP2Error):
|
||||
http_status: Optional[int]
|
||||
uri: Optional[Text]
|
||||
def __init__(self, message: Text, http_status: Optional[int] = ..., uri: Optional[Text] = ...) -> None: ...
|
||||
|
||||
class InvalidRequestError(GeoIP2Error): ...
|
||||
class OutOfQueriesError(GeoIP2Error): ...
|
||||
class PermissionRequiredError(GeoIP2Error): ...
|
||||
3
stubs/geoip2/geoip2/mixins.pyi
Normal file
3
stubs/geoip2/geoip2/mixins.pyi
Normal file
@@ -0,0 +1,3 @@
|
||||
class SimpleEquality:
|
||||
def __eq__(self, other: object) -> bool: ...
|
||||
def __ne__(self, other: object) -> bool: ...
|
||||
62
stubs/geoip2/geoip2/models.pyi
Normal file
62
stubs/geoip2/geoip2/models.pyi
Normal file
@@ -0,0 +1,62 @@
|
||||
from typing import Any, Mapping, Optional, Sequence, Text
|
||||
|
||||
from geoip2 import records
|
||||
from geoip2.mixins import SimpleEquality
|
||||
|
||||
_Locales = Optional[Sequence[Text]]
|
||||
_RawResponse = Mapping[Text, Mapping[Text, Any]]
|
||||
|
||||
class Country(SimpleEquality):
|
||||
continent: records.Continent
|
||||
country: records.Country
|
||||
registered_country: records.Country
|
||||
represented_country: records.RepresentedCountry
|
||||
maxmind: records.MaxMind
|
||||
traits: records.Traits
|
||||
raw: _RawResponse
|
||||
def __init__(self, raw_response: _RawResponse, locales: _Locales = ...) -> None: ...
|
||||
|
||||
class City(Country):
|
||||
city: records.City
|
||||
location: records.Location
|
||||
postal: records.Postal
|
||||
subdivisions: records.Subdivisions
|
||||
def __init__(self, raw_response: _RawResponse, locales: _Locales = ...) -> None: ...
|
||||
|
||||
class Insights(City): ...
|
||||
class Enterprise(City): ...
|
||||
class SimpleModel(SimpleEquality): ...
|
||||
|
||||
class AnonymousIP(SimpleModel):
|
||||
is_anonymous: bool
|
||||
is_anonymous_vpn: bool
|
||||
is_hosting_provider: bool
|
||||
is_public_proxy: bool
|
||||
is_tor_exit_node: bool
|
||||
ip_address: Optional[Text]
|
||||
raw: _RawResponse
|
||||
def __init__(self, raw: _RawResponse) -> None: ...
|
||||
|
||||
class ASN(SimpleModel):
|
||||
autonomous_system_number: Optional[int]
|
||||
autonomous_system_organization: Optional[Text]
|
||||
ip_address: Optional[Text]
|
||||
raw: _RawResponse
|
||||
def __init__(self, raw: _RawResponse) -> None: ...
|
||||
|
||||
class ConnectionType(SimpleModel):
|
||||
connection_type: Optional[Text]
|
||||
ip_address: Optional[Text]
|
||||
raw: _RawResponse
|
||||
def __init__(self, raw: _RawResponse) -> None: ...
|
||||
|
||||
class Domain(SimpleModel):
|
||||
domain: Optional[Text]
|
||||
ip_address: Optional[Text]
|
||||
raw: Optional[Text]
|
||||
def __init__(self, raw: _RawResponse) -> None: ...
|
||||
|
||||
class ISP(ASN):
|
||||
isp: Optional[Text]
|
||||
organization: Optional[Text]
|
||||
def __init__(self, raw: _RawResponse) -> None: ...
|
||||
83
stubs/geoip2/geoip2/records.pyi
Normal file
83
stubs/geoip2/geoip2/records.pyi
Normal file
@@ -0,0 +1,83 @@
|
||||
from typing import Any, Mapping, Optional, Sequence, Text, Tuple
|
||||
|
||||
from geoip2.mixins import SimpleEquality
|
||||
|
||||
_Locales = Optional[Sequence[Text]]
|
||||
_Names = Mapping[Text, Text]
|
||||
|
||||
class Record(SimpleEquality):
|
||||
def __init__(self, **kwargs: Any) -> None: ...
|
||||
def __setattr__(self, name: Text, value: Any) -> None: ...
|
||||
|
||||
class PlaceRecord(Record):
|
||||
def __init__(self, locales: _Locales = ..., **kwargs: Any) -> None: ...
|
||||
@property
|
||||
def name(self) -> Text: ...
|
||||
|
||||
class City(PlaceRecord):
|
||||
confidence: int
|
||||
geoname_id: int
|
||||
names: _Names
|
||||
|
||||
class Continent(PlaceRecord):
|
||||
code: Text
|
||||
geoname_id: int
|
||||
names: _Names
|
||||
|
||||
class Country(PlaceRecord):
|
||||
confidence: int
|
||||
geoname_id: int
|
||||
is_in_european_union: bool
|
||||
iso_code: Text
|
||||
names: _Names
|
||||
def __init__(self, locales: _Locales = ..., **kwargs: Any) -> None: ...
|
||||
|
||||
class RepresentedCountry(Country):
|
||||
type: Text
|
||||
|
||||
class Location(Record):
|
||||
average_income: int
|
||||
accuracy_radius: int
|
||||
latitude: float
|
||||
longitude: float
|
||||
metro_code: int
|
||||
population_density: int
|
||||
time_zone: Text
|
||||
|
||||
class MaxMind(Record):
|
||||
queries_remaining: int
|
||||
|
||||
class Postal(Record):
|
||||
code: Text
|
||||
confidence: int
|
||||
|
||||
class Subdivision(PlaceRecord):
|
||||
confidence: int
|
||||
geoname_id: int
|
||||
iso_code: Text
|
||||
names: _Names
|
||||
|
||||
class Subdivisions(Tuple[Subdivision]):
|
||||
def __new__(cls, locales: _Locales, *subdivisions: Subdivision) -> Subdivisions: ...
|
||||
def __init__(self, locales: _Locales, *subdivisions: Subdivision) -> None: ...
|
||||
@property
|
||||
def most_specific(self) -> Subdivision: ...
|
||||
|
||||
class Traits(Record):
|
||||
autonomous_system_number: int
|
||||
autonomous_system_organization: Text
|
||||
connection_type: Text
|
||||
domain: Text
|
||||
ip_address: Text
|
||||
is_anonymous: bool
|
||||
is_anonymous_proxy: bool
|
||||
is_anonymous_vpn: bool
|
||||
is_hosting_provider: bool
|
||||
is_legitimate_proxy: bool
|
||||
is_public_proxy: bool
|
||||
is_satellite_provider: bool
|
||||
is_tor_exit_node: bool
|
||||
isp: Text
|
||||
organization: Text
|
||||
user_type: Text
|
||||
def __init__(self, **kwargs: Any) -> None: ...
|
||||
Reference in New Issue
Block a user