2 from types import ModuleType
3 from typing import Any, Container, Iterable, Sequence, Tuple, Type
4 from typing_extensions import Literal
6 if sys.platform == "win32":
7 from _msi import _Database
10 if sys.version_info < (3, 7):
14 datasizemask: Literal[0x00FF]
15 type_valid: Literal[0x0100]
16 type_localizable: Literal[0x0200]
17 typemask: Literal[0x0C00]
18 type_long: Literal[0x0000]
19 type_short: Literal[0x0400]
20 type_string: Literal[0x0C00]
21 type_binary: Literal[0x0800]
22 type_nullable: Literal[0x1000]
23 type_key: Literal[0x2000]
24 knownbits: Literal[0x3FFF]
28 fields: list[tuple[int, str, int]]
29 def __init__(self, name: str) -> None: ...
30 def add_field(self, index: int, name: str, type: int) -> None: ...
31 def sql(self) -> str: ...
32 def create(self, db: _Database) -> None: ...
33 class _Unspecified: ...
35 seq: Sequence[tuple[str, str | None, int]],
37 seqno: int | Type[_Unspecified] = ...,
38 cond: str | Type[_Unspecified] = ...,
40 def add_data(db: _Database, table: str, values: Iterable[Tuple[Any, ...]]) -> None: ...
41 def add_stream(db: _Database, name: str, path: str) -> None: ...
43 name: str, schema: ModuleType, ProductName: str, ProductCode: str, ProductVersion: str, Manufacturer: str
45 def add_tables(db: _Database, module: ModuleType) -> None: ...
46 def make_id(str: str) -> str: ...
47 def gen_uuid() -> str: ...
51 files: list[tuple[str, str]]
54 def __init__(self, name: str) -> None: ...
55 def gen_id(self, file: str) -> str: ...
56 def append(self, full: str, file: str, logical: str) -> tuple[int, str]: ...
57 def commit(self, db: _Database) -> None: ...
58 _directories: set[str]
69 keyfiles: dict[str, str]
70 componentflags: int | None
80 componentflags: int | None = ...,
84 component: str | None = ...,
85 feature: Feature | None = ...,
86 flags: int | None = ...,
87 keyfile: str | None = ...,
88 uuid: str | None = ...,
90 def make_short(self, file: str) -> str: ...
91 def add_file(self, file: str, src: str | None = ..., version: str | None = ..., language: str | None = ...) -> str: ...
92 def glob(self, pattern: str, exclude: Container[str] | None = ...) -> list[str]: ...
93 def remove_pyc(self) -> None: ...
97 def __init__(self, fname: str) -> None: ...
98 def __repr__(self) -> str: ...
110 parent: Feature | None = ...,
111 directory: str | None = ...,
112 attributes: int = ...,
114 def set_current(self) -> None: ...
119 def __init__(self, dlg: Dialog, name: str) -> None: ...
120 def event(self, event: str, argument: str, condition: str = ..., ordering: int | None = ...) -> None: ...
121 def mapping(self, event: str, attribute: str) -> None: ...
122 def condition(self, action: str, condition: str) -> None: ...
123 class RadioButtonGroup(Control):
127 def __init__(self, dlg: Dialog, name: str, property: str) -> None: ...
128 def add(self, name: str, x: int, y: int, w: int, h: int, text: str, value: str | None = ...) -> None: ...
165 def text(self, name: str, x: int, y: int, w: int, h: int, attr: int, text: str | None) -> Control: ...
166 def bitmap(self, name: str, x: int, y: int, w: int, h: int, text: str | None) -> Control: ...
167 def line(self, name: str, x: int, y: int, w: int, h: int) -> Control: ...
169 self, name: str, x: int, y: int, w: int, h: int, attr: int, text: str | None, next: str | None
172 self, name: str, x: int, y: int, w: int, h: int, attr: int, prop: str | None, text: str | None, next: str | None
173 ) -> RadioButtonGroup: ...
175 self, name: str, x: int, y: int, w: int, h: int, attr: int, prop: str | None, text: str | None, next: str | None