import { ManageAppVariables } from "../../../types/app.js";
import { OpenAPIHono } from "@hono/zod-openapi";
import { OrgRole, ScheduledTrigger } from "@inkeep/agents-core";

//#region src/domains/manage/routes/scheduledTriggers.d.ts
declare function validateRunAsUserId(params: {
  runAsUserId: string;
  callerId: string;
  tenantId: string;
  projectId: string;
  tenantRole: OrgRole;
}): Promise<void>;
/**
 * Check if a non-admin user is allowed to mutate a trigger.
 * Admins can mutate any trigger. Non-admins can only mutate triggers they created or that run as them.
 */
declare function assertCanMutateTrigger(params: {
  trigger: {
    createdBy: string | null;
    runAsUserId: string | null;
  };
  callerId: string;
  tenantRole: OrgRole;
}): void;
declare function isScheduledTriggerChanged(incoming: Record<string, unknown>, existing: ScheduledTrigger): boolean;
declare const app: OpenAPIHono<{
  Variables: ManageAppVariables;
}, {}, "/">;
//#endregion
export { assertCanMutateTrigger, app as default, isScheduledTriggerChanged, validateRunAsUserId };