# Stubtest doesn't recognize __ as indicating positional-only arg at runtime
# https://github.com/python/mypy/issues/15302
peewee.Model.insert
peewee.Model.replace
peewee.Model.update

# Wrapped with @Node.copy which changes the signature to "def (self, *args, **kwargs)"
peewee.DQ.__invert__
peewee.Window.as_groups
peewee.Window.as_range
peewee.Window.as_rows
peewee._ModelQueryHelper.models

# Wrapped with @database_required which sometimes injects the database argument
peewee.BaseQuery.execute
peewee.CompoundSelectQuery.exists
peewee.SelectBase.count
peewee.SelectBase.exists
peewee.SelectBase.first
peewee.SelectBase.get
peewee.SelectBase.peek
peewee.SelectBase.scalar
peewee.SelectBase.scalars

# Descriptor methods exist on FieldAccessor at runtime, but are declared on the
# generic Field classes in the stub so that `instance.field` resolves to the
# field's Python value and `Model.field` resolves to the field (for queries).
peewee.Field.__get__
peewee.Field.__set__
# BigBitField overrides __get__ to yield a BigBitFieldData wrapper, not bytes.
peewee.BigBitField.__get__
peewee.Field.__init__
# These fields take named constructor args, carried by their __new__ overloads.
peewee.CharField.__init__
peewee.ForeignKeyField.__init__
peewee.DecimalField.__init__
peewee.IdentityField.__init__

# Ignore missing playhouse modules and names we don't currently provide
playhouse\.\w+?
playhouse.flask_utils.PaginatedQuery
playhouse.flask_utils.get_\w+
playhouse.flask_utils.object_list
