import { z } from "zod";
import { AppPropertySchema, ActionPropertySchema, ConnectionPropertySchema, InputsPropertySchema, TriggerInboxNamePropertySchema, } from "../../../types/properties";
import { TriggerInboxItemSchema, } from "../../../schemas/TriggerInbox";
const CreateTriggerInboxDescription = "Create a new trigger inbox subscription. Always creates a new inbox; use ensureTriggerInbox for get-or-create on a stable name.";
export const CreateTriggerInboxSchema = z
    .object({
    name: TriggerInboxNamePropertySchema.optional().describe("Optional inbox name. Auto-generated when omitted. Throws a conflict error if the name is already in use by another subscription."),
    app: AppPropertySchema,
    action: ActionPropertySchema,
    connection: ConnectionPropertySchema.nullable()
        .optional()
        .describe("Connection alias or connection ID. Optional for triggers that don't require auth."),
    inputs: InputsPropertySchema.optional().describe("Input parameters for the trigger subscription"),
    notificationUrl: z
        .string()
        .url()
        .optional()
        .describe("Webhook URL to POST to when new messages arrive"),
})
    .describe(CreateTriggerInboxDescription);
export { TriggerInboxItemSchema };
