"""
This type stub file was generated by pyright.
"""

""" ODDT's internal docking/scoring engines """
def get_children(molecule, mother, restricted): # -> ndarray[Unknown, Unknown]:
    ...

def get_close_neighbors(molecule, a_idx, num_bonds=...): # -> ndarray[Unknown, Unknown]:
    ...

def change_dihedral(coords, a1, a2, a3, a4, target_angle, rot_mask):
    ...

def num_rotors_pdbqt(lig): # -> float | Literal[0]:
    ...

class vina_docking:
    def __init__(self, rec, lig=..., box=..., box_size=..., weights=...) -> None:
        ...
    
    def set_box(self, box): # -> None:
        ...
    
    def set_protein(self, rec): # -> None:
        ...
    
    def set_ligand(self, lig): # -> None:
        ...
    
    def set_coords(self, coords): # -> None:
        ...
    
    def score(self, coords=...): # -> Any:
        ...
    
    def weighted_total(self, coords=...): # -> Any:
        ...
    
    def score_total(self, coords=...): # -> NDArray[bool_]:
        ...
    
    def weighted_inter(self, coords=...): # -> Any:
        ...
    
    def weighted_intra(self, coords=...): # -> Any:
        ...
    
    def score_inter(self, coords=...): # -> ndarray[Unknown, Unknown]:
        ...
    
    def score_intra(self, coords=...): # -> ndarray[Unknown, Unknown]:
        ...
    
    def correct_radius(self, atom_dict):
        ...
    


class vina_ligand:
    def __init__(self, c0, num_rotors, engine, box_size=...) -> None:
        ...
    
    def mutate(self, x2, force=...):
        ...
    


