1#ifndef YAZE_APP_CORE_SERVICE_SCREENSHOT_UTILS_H_
2#define YAZE_APP_CORE_SERVICE_SCREENSHOT_UTILS_H_
14#include "absl/status/statusor.h"
19struct ScreenshotArtifact {
20 std::string file_path;
23 int64_t file_size_bytes = 0;
37absl::StatusOr<ScreenshotFormat> ResolveScreenshotFormat(
43absl::StatusOr<ScreenshotArtifact> CaptureHarnessScreenshot(
44 const std::string& preferred_path =
"",
bool reveal_to_user =
true,
50absl::StatusOr<ScreenshotArtifact> CaptureHarnessScreenshotRegion(
51 const std::optional<CaptureRegion>& region,
52 const std::string& preferred_path =
"",
bool reveal_to_user =
true,
56absl::StatusOr<ScreenshotArtifact> CaptureActiveWindow(
57 const std::string& preferred_path =
"",
bool reveal_to_user =
true,
62absl::StatusOr<ScreenshotArtifact> CaptureWindowByName(
63 const std::string& window_name,
const std::string& preferred_path =
"",
64 bool reveal_to_user =
true,