the-ldk
Version:
Welcome to the LDK! A collection of custom AWS CDK constructs to help you build serverless applications faster.
94 lines (93 loc) • 4.21 kB
TypeScript
import { z as zod } from 'zod';
import { Authorizer, RestApiProps } from 'aws-cdk-lib/aws-apigateway';
import { ApiGatewayProps as CdkApiGatewayProps } from 'aws-cdk-lib/aws-events-targets';
import { Certificate } from 'aws-cdk-lib/aws-certificatemanager';
export declare const ExtendedApiGatewayPropsSchema: zod.ZodObject<{
serviceName: zod.ZodString;
env: zod.ZodString;
customDomainName: zod.ZodOptional<zod.ZodString>;
version: zod.ZodOptional<zod.ZodString>;
rateLimit: zod.ZodOptional<zod.ZodNumber>;
burstLimit: zod.ZodOptional<zod.ZodNumber>;
apiKeyRequired: zod.ZodOptional<zod.ZodBoolean>;
restApiProps: zod.ZodOptional<zod.ZodObject<{
deployOptions: zod.ZodOptional<zod.ZodAny>;
defaultMethodOptions: zod.ZodOptional<zod.ZodAny>;
}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
deployOptions: zod.ZodOptional<zod.ZodAny>;
defaultMethodOptions: zod.ZodOptional<zod.ZodAny>;
}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
deployOptions: zod.ZodOptional<zod.ZodAny>;
defaultMethodOptions: zod.ZodOptional<zod.ZodAny>;
}, zod.ZodTypeAny, "passthrough">>>;
domainNameAliasTarget: zod.ZodOptional<zod.ZodString>;
domainNameAliasHostedZoneId: zod.ZodOptional<zod.ZodString>;
corsOptions: zod.ZodOptional<zod.ZodObject<{
allowOrigins: zod.ZodArray<zod.ZodString, "many">;
allowMethods: zod.ZodOptional<zod.ZodArray<zod.ZodString, "many">>;
allowHeaders: zod.ZodOptional<zod.ZodArray<zod.ZodString, "many">>;
}, "strip", zod.ZodTypeAny, {
allowOrigins: string[];
allowMethods?: string[] | undefined;
allowHeaders?: string[] | undefined;
}, {
allowOrigins: string[];
allowMethods?: string[] | undefined;
allowHeaders?: string[] | undefined;
}>>;
enableTracing: zod.ZodOptional<zod.ZodBoolean>;
loggingLevel: zod.ZodOptional<zod.ZodString>;
dataTraceEnabled: zod.ZodOptional<zod.ZodBoolean>;
authorizer: zod.ZodOptional<zod.ZodType<Authorizer, zod.ZodTypeDef, Authorizer>>;
customDomainCertificate: zod.ZodOptional<zod.ZodType<Certificate, zod.ZodTypeDef, Certificate>>;
}, "strip", zod.ZodTypeAny, {
serviceName: string;
env: string;
customDomainName?: string | undefined;
version?: string | undefined;
rateLimit?: number | undefined;
burstLimit?: number | undefined;
apiKeyRequired?: boolean | undefined;
restApiProps?: zod.objectOutputType<{
deployOptions: zod.ZodOptional<zod.ZodAny>;
defaultMethodOptions: zod.ZodOptional<zod.ZodAny>;
}, zod.ZodTypeAny, "passthrough"> | undefined;
domainNameAliasTarget?: string | undefined;
domainNameAliasHostedZoneId?: string | undefined;
corsOptions?: {
allowOrigins: string[];
allowMethods?: string[] | undefined;
allowHeaders?: string[] | undefined;
} | undefined;
enableTracing?: boolean | undefined;
loggingLevel?: string | undefined;
dataTraceEnabled?: boolean | undefined;
authorizer?: Authorizer | undefined;
customDomainCertificate?: Certificate | undefined;
}, {
serviceName: string;
env: string;
customDomainName?: string | undefined;
version?: string | undefined;
rateLimit?: number | undefined;
burstLimit?: number | undefined;
apiKeyRequired?: boolean | undefined;
restApiProps?: zod.objectInputType<{
deployOptions: zod.ZodOptional<zod.ZodAny>;
defaultMethodOptions: zod.ZodOptional<zod.ZodAny>;
}, zod.ZodTypeAny, "passthrough"> | undefined;
domainNameAliasTarget?: string | undefined;
domainNameAliasHostedZoneId?: string | undefined;
corsOptions?: {
allowOrigins: string[];
allowMethods?: string[] | undefined;
allowHeaders?: string[] | undefined;
} | undefined;
enableTracing?: boolean | undefined;
loggingLevel?: string | undefined;
dataTraceEnabled?: boolean | undefined;
authorizer?: Authorizer | undefined;
customDomainCertificate?: Certificate | undefined;
}>;
export interface ApiGatewayProps extends CdkApiGatewayProps, Partial<RestApiProps>, zod.infer<typeof ExtendedApiGatewayPropsSchema> {
}