import { RestApi } from 'aws-cdk-lib/aws-apigateway'; import { Function } from 'aws-cdk-lib/aws-lambda'; import { DotStack } from '../constructs/Stack'; import { AddAuthorizerOptions } from './authorizer'; import { AddNodeFunctionOptions } from './node-function'; interface ApiDomainOptions { certificateArn: string; tld: string; } type ApiVerb = 'DELETE' | 'GET' | 'POST' | 'PUT' | 'OPTIONS'; interface AddApiOptions { authorization?: Omit; binaryMedia?: boolean | string[]; cors?: boolean; deployEnv?: 'prod' | 'stage' | 'dev' | 'test'; domain?: ApiDomainOptions; handler: Omit | Function; name?: string; paths?: string[]; proxy?: boolean; scope: DotStack; verbs?: ApiVerb[]; } export interface AddApiResult { api: RestApi; handler: Function; } export declare const addApi: (options: AddApiOptions) => AddApiResult; export {};