import { ZambdaSchedule } from './ZambdaSchedule';
export interface ZambdaCreateParams {
    /**
     * A name for the Zambda Function. May contain letters, numbers, dashes, and underscores. Must be unique within the project.
     */
    name: string;
    /**
     * The trigger method for the Zambda Function determines how the Function is invoked. Learn more about the different types here, https://docs.oystehr.com/oystehr/services/zambda/#types-of-zambdas.
     */
    triggerMethod?: 'http_auth' | 'http_open' | 'subscription' | 'cron';
    schedule?: ZambdaSchedule;
    /**
     * The runtime to use for the Zambda Function. This property is optional and defaults to "nodejs20.x".
     */
    runtime?: 'nodejs18.x' | 'nodejs20.x' | 'nodejs22.x' | 'python3.13' | 'python3.12' | 'java21' | 'dotnet9' | 'ruby3.3';
    /**
     * The amount of memory in MB to allocate to the Zambda Function. If not specified, a system default (1024MB) will be used. Min: 128MB, Max: 10240MB.
     */
    memorySize?: number;
    /**
     * The timeout for the Zambda Function in seconds. If not specified, a system default (27 seconds) will be used. Min: 1s, Max: 900s (15 minutes). Note: For 'http_auth' and 'http_open' trigger methods, the timeout cannot exceed 27 seconds due to API Gateway limitations.
     */
    timeoutInSeconds?: number;
}
