class ProjectMetricRequest:
    def total(self): ...
    def percent(self): ...
    def top(self, n: int): ...

class ProjectDimensionRequest:
    def year(self) -> "ProjectDimensionRequest": ...
    def quarter(self) -> "ProjectDimensionRequest": ...
    def month(self) -> "ProjectDimensionRequest": ...
    def week(self) -> "ProjectDimensionRequest": ...
    def day(self) -> "ProjectDimensionRequest": ...
    def date(self) -> "ProjectDimensionRequest": ...
    def hour(self) -> "ProjectDimensionRequest": ...
    def minute(self) -> "ProjectDimensionRequest": ...
    def second(self) -> "ProjectDimensionRequest": ...
    def datetrunc(self, part: str) -> "ProjectDimensionRequest": ...
    def datepart(self, part: str) -> "ProjectDimensionRequest": ...
    def last(self, n: int, part: str) -> "ProjectDimensionRequest": ...
    def step(self, size: int) -> "ProjectDimensionRequest": ...
