|
import enum |
|
import re |
|
import sys |
|
from array import array |
|
from typing import Any, List, Optional, Dict, Tuple, Union, overload |
|
|
|
if sys.version_info < (3, 8): |
|
from typing_extensions import Literal |
|
else: |
|
from typing import Literal |
|
|
|
from pysam import AlignmentHeader # type: ignore |
|
|
|
CMATCH: int |
|
CINS: int |
|
CDEL: int |
|
CREF_SKIP: int |
|
CSOFT_CLIP: int |
|
CHARD_CLIP: int |
|
CPAD: int |
|
CEQUAL: int |
|
CDIFF: int |
|
CBACK: int |
|
|
|
FPAIRED: int |
|
FPROPER_PAIR: int |
|
FUNMAP: int |
|
FMUNMAP: int |
|
FREVERSE: int |
|
FMREVERSE: int |
|
FREAD1: int |
|
FREAD2: int |
|
FSECONDARY: int |
|
FQCFAIL: int |
|
FDUP: int |
|
FSUPPLEMENTARY: int |
|
|
|
CIGAR2CODE: Dict[int, str] |
|
CIGAR_REGEX: re.Pattern |
|
DATATYPE2FORMAT: Dict[int, Tuple[str, int]] |
|
KEY_NAMES: List[str] |
|
|
|
TagValue = Union[str, int, float, array] |
|
|
|
class CIGAR_OPS(enum.IntEnum): |
|
CBACK: int |
|
CDEL: int |
|
CDIFF: int |
|
CEQUAL: int |
|
CHARD_CLIP: int |
|
CINS: int |
|
CMATCH: int |
|
CPAD: int |
|
CREF_SKIP: int |
|
CSOFT_CLIP: int |
|
|
|
class SAM_FLAGS(enum.IntEnum): |
|
FDUP: int |
|
FMREVERSE: int |
|
FMUNMAP: int |
|
FPAIRED: int |
|
FPROPER_PAIR: int |
|
FQCFAIL: int |
|
FREAD1: int |
|
FREAD2: int |
|
FREVERSE: int |
|
FSECONDARY: int |
|
FSUPPLEMENTARY: int |
|
FUNMAP: int |
|
|
|
class AlignedSegment: |
|
header: AlignmentHeader |
|
query_name: Optional[str] |
|
flag: int |
|
reference_name: Optional[str] |
|
reference_id: int |
|
reference_start: int |
|
mapping_quality: int |
|
cigarstring: Optional[str] |
|
next_reference_id: int |
|
next_reference_name: Optional[str] |
|
next_reference_start: int |
|
template_length: int |
|
query_sequence: Optional[str] |
|
query_qualities: Optional[array] |
|
bin: int |
|
is_paired: bool |
|
is_proper_pair: bool |
|
is_unmapped: bool |
|
mate_is_unmapped: bool |
|
is_reverse: bool |
|
mate_is_reverse: bool |
|
is_read1: bool |
|
is_read2: bool |
|
is_secondary: bool |
|
is_qcfail: bool |
|
is_duplicate: bool |
|
is_supplementary: bool |
|
cigartuples: Optional[List[Tuple[int, int]]] |
|
def __init__(self, header: Optional[AlignmentHeader] = ...) -> None: ... |
|
def compare(self, other: Any) -> int: ... |
|
def to_string(self) -> str: ... |
|
@classmethod |
|
def fromstring(cls, sam: str, header: AlignmentHeader) -> AlignedSegment: ... |
|
def to_dict(self) -> Dict: ... |
|
@classmethod |
|
def from_dict(cls, sam_dict: Dict[str, Any], header: AlignmentHeader) -> Any: ... |
|
def get_reference_positions(self, full_length: bool = ...) -> List[int]: ... |
|
@property |
|
def query_length(self) -> int: ... |
|
@property |
|
def reference_end(self) -> Optional[int]: ... |
|
@property |
|
def reference_length(self) -> Optional[int]: ... |
|
@property |
|
def query_alignment_sequence(self) -> Optional[str]: ... |
|
@property |
|
def query_alignment_qualities(self) -> Optional[array]: ... |
|
@property |
|
def query_alignment_start(self) -> int: ... |
|
@property |
|
def query_alignment_end(self) -> int: ... |
|
@property |
|
def query_alignment_length(self) -> int: ... |
|
def infer_query_length(self) -> Optional[int]: ... |
|
def infer_read_length(self) -> Optional[int]: ... |
|
def get_reference_sequence(self) -> str: ... |
|
def get_forward_sequence(self) -> Optional[str]: ... |
|
def get_forward_qualities(self) -> Optional[array]: ... |
|
def get_aligned_pairs( |
|
self, matches_only: bool = ..., with_seq: bool = ... |
|
) -> List[Tuple[int, int]]: ... |
|
def get_blocks(self) -> List[Tuple[int, int]]: ... |
|
def get_overlap(self, start: int, end: int) -> Optional[int]: ... |
|
def get_cigar_stats(self) -> Tuple[array, array]: ... |
|
def set_tag( |
|
self, |
|
tag: str, |
|
value: Union[int, float, str, bytes, array, List, Tuple, None], |
|
value_type: Optional[ |
|
Literal["A", "i", "f", "Z", "H", "B", "c", "C", "s", "S", "I"] |
|
] = ..., |
|
replace: bool = ..., |
|
) -> None: ... |
|
def has_tag(self, tag: str) -> bool: ... |
|
@overload |
|
def get_tag(self, tag: str, with_value_type: Literal[False] = ...) -> TagValue: ... |
|
@overload |
|
def get_tag( |
|
self, tag: str, with_value_type: Literal[True] |
|
) -> Tuple[TagValue, str]: ... |
|
@overload |
|
def get_tag( |
|
self, tag: str, with_value_type: bool |
|
) -> Union[TagValue, Tuple[TagValue, str]]: ... |
|
@overload |
|
def get_tags( |
|
self, with_value_type: Literal[False] = ... |
|
) -> List[Tuple[str, TagValue]]: ... |
|
@overload |
|
def get_tags( |
|
self, with_value_type: Literal[True] |
|
) -> List[Tuple[str, TagValue, str]]: ... |
|
@overload |
|
def get_tags( |
|
self, with_value_type: bool |
|
) -> Union[List[Tuple[str, TagValue]], List[Tuple[str, TagValue, str]]]: ... |
|
@overload |
|
def get_tags( |
|
self, with_value_type: bool = ... |
|
) -> Union[List[Tuple[str, TagValue, str]], List[Tuple[str, TagValue]]]: ... |
|
def set_tags(self, tags: Any) -> None: ... |
|
def __eq__(self, other): ... |
|
def __ge__(self, other): ... |
|
def __gt__(self, other): ... |
|
def __le__(self, other): ... |
|
def __lt__(self, other): ... |
|
def __ne__(self, other): ... |
|
|
|
class PileupRead: |
|
@property |
|
def alignment(self) -> AlignedSegment: ... |
|
@property |
|
def query_position(self) -> Optional[int]: ... |
|
@property |
|
def query_position_or_next(self) -> int: ... |
|
@property |
|
def indel(self) -> int: ... |
|
@property |
|
def level(self) -> int: ... |
|
@property |
|
def is_del(self) -> int: ... |
|
@property |
|
def is_head(self) -> int: ... |
|
@property |
|
def is_tail(self) -> int: ... |
|
@property |
|
def is_refskip(self) -> int: ... |
|
|
|
class PileupColumn: |
|
nsegments: int |
|
def set_min_base_quality(self, min_base_quality: int) -> None: ... |
|
def __len__(self) -> int: ... |
|
@property |
|
def reference_id(self) -> int: ... |
|
@property |
|
def reference_name(self) -> Optional[str]: ... |
|
@property |
|
def reference_pos(self) -> int: ... |
|
@property |
|
def pileups(self) -> List[PileupRead]: ... |
|
def get_num_aligned(self) -> int: ... |
|
def get_query_sequences( |
|
self, |
|
mark_matches: bool = ..., |
|
mark_ends: bool = ..., |
|
add_indels: bool = ..., |
|
) -> List[str]: ... |
|
def get_query_qualities(self) -> List[int]: ... |
|
def get_mapping_qualities(self) -> List[int]: ... |
|
def get_query_positions(self) -> List[int]: ... |
|
def get_query_names(self) -> List[str]: ... |
|
|