# Generated by scripts/generate_pyi.py, do not edit.

from typing import Any, Callable

import renpy

import builtins as __builtins__
import collections as collections
import math as math
import renpy as renpy
import sys as sys
import time as time
import weakref as weakref

class GLTexture(renpy.gl2.gl2model.GL2Model):
    def __init__(self, /, *args, **kwargs): ...

    def __reduce__(self): ...

    def __repr__(self, /): ...

    def __setstate__(self, __pyx_state): ...

    def add_mipmap(self): ...

    def allocate_texture(self, tex: int, tw: int, th: int, properties={}): ...

    def from_render(self, what, properties): ...

    def from_surface(self, surface, properties): ...

    def get_number(self): ...

    def get_texture(self, i: int) -> 'GL2Model': ...

    def load(self): ...

    def load_gltexture(self): ...

    def load_gltexture_premultiplied(self): ...

    def mipmap_texture(self, tex: int, tw: int, th: int, properties={}): ...

    def should_have_mipmaps(self, properties): ...

    def subsurface(self, rect): ...


class Texture(GLTexture):

    pass


class TextureLoader:
    def __init__(self, /, *args, **kwargs): ...

    def __reduce__(self): ...

    def __setstate__(self, __pyx_state): ...

    def cleanup(self): ...

    def get_texture_size(self): ...

    def init(self): ...

    def load_one_surface(self, surf, bl, bt, br, bb, properties): ...

    def load_surface(self, surf, properties): ...

    def quit(self): ...

    def ready_one_texture(self): ...

    def render_to_texture(self, what, properties): ...

    def texture_axis(self, length, limit, border): ...


