from ..Base import *
from ..Proxy import *
from .AcadDatabase import AcadDatabase as AcadDatabase, IAcadDatabase as IAcadDatabase
from .AcadUCS import AcadUCS as AcadUCS

class AcadDocument(AcadDatabase):
    def __init__(self, obj) -> None: ...
    Active: bool
    ActiveDimStyle: AcadDimStyle
    ActiveLayer: AcadLayer
    ActiveLayout: AcadLayout
    ActiveLinetype: AcadLineType
    ActiveMaterial: AcadMaterial
    ActivePViewport: AcadPViewport
    ActiveSelectionSet: AcadSelectionSet
    ActiveSpace: AcActiveSpace
    ActiveTextStyle: AcadTextStyle
    ActiveUCS: AcadUCS
    ActiveViewport: AcadViewport
    Application: AcadApplication
    Database: IAcadDatabase
    FullName: str
    Height: float
    HWND: int
    MSpace: bool
    Name: str
    ObjectSnapMode: bool
    Path: str
    PickfirstSelectionSet: AcadSelectionSet
    Plot: AcadPlot
    ReadOnly: bool
    Saved: bool
    SelectionSets: AcadSelectionSet
    SummaryInfo: AcadSummaryInfo
    Utility: AcadUtility
    Width: float
    WindowState: AcWindowState
    WindowTitle: str
    def Activate(self) -> None: ...
    def AuditInfo(self, FixError: bool) -> None: ...
    def Close(self, SaveChanges: bool = False, FileName: str = '') -> None: ...
    def EndUndoMark(self) -> None: ...
    def Export(self, FileName: str, Extension: str, SelectionSet: AcadSelectionSet) -> None: ...
    def GetVariable(self, Name: str) -> any: ...
    def Import(self, FileName: str, InsertionPoint: PyGePoint3d, ScaleFactor: float) -> AcadBlockReference | None: ...
    def LoadShapeFile(self, FullName: str) -> None: ...
    def New(self, TemplateFileName: str) -> AcadDocument: ...
    def Open(self, Name: str, ReadOnly: bool = False) -> AcadDocument: ...
    def PostCommand(self, Command: str) -> None: ...
    def PurgeAll(self) -> None: ...
    def Regen(self, WhichViewports: AcRegenType) -> None: ...
    def Save(self) -> None: ...
    def SaveAs(self, FileName: str, FileType: AcSaveAsType = ..., SecurityParams: AcadSecurityParams = None) -> None: ...
    def SendCommand(self, Command: str) -> None: ...
    def SetVariable(self, Name: str, Value: Variant) -> None: ...
    def StartUndoMark(self) -> None: ...
    def WBlock(self, FileName: str, SelectionSet: AcadSelectionSet) -> None: ...
