UNPKG

serverless-spy

Version:

CDK-based library for writing elegant integration tests on AWS serverless architecture and an additional web console to monitor events in real time.

1,354 lines 118 kB
import { loadRestJsonErrorCode, parseJsonBody as parseBody, parseJsonErrorBody as parseErrorBody } from "@aws-sdk/core"; import { requestBuilder as rb } from "@smithy/core"; import { _json, collectBody, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, expectString as __expectString, isSerializableHeaderValue, limitedParseDouble as __limitedParseDouble, map, parseEpochTimestamp as __parseEpochTimestamp, serializeFloat as __serializeFloat, take, withBaseException, } from "@smithy/smithy-client"; import { LambdaServiceException as __BaseException } from "../models/LambdaServiceException"; import { CodeSigningConfigNotFoundException, CodeStorageExceededException, CodeVerificationFailedException, EC2AccessDeniedException, EC2ThrottledException, EC2UnexpectedException, EFSIOException, EFSMountConnectivityException, EFSMountFailureException, EFSMountTimeoutException, ENILimitReachedException, InvalidCodeSignatureException, InvalidParameterValueException, InvalidRequestContentException, InvalidRuntimeException, InvalidSecurityGroupIDException, InvalidSubnetIDException, InvalidZipFileException, KMSAccessDeniedException, KMSDisabledException, KMSInvalidStateException, KMSNotFoundException, PolicyLengthExceededException, PreconditionFailedException, ProvisionedConcurrencyConfigNotFoundException, RecursiveInvocationException, RequestTooLargeException, ResourceConflictException, ResourceInUseException, ResourceNotFoundException, ResourceNotReadyException, ServiceException, SnapStartException, SnapStartNotReadyException, SnapStartTimeoutException, SubnetIPAddressLimitReachedException, TooManyRequestsException, UnsupportedMediaTypeException, } from "../models/models_0"; export const se_AddLayerVersionPermissionCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy"); b.p("LayerName", () => input.LayerName, "{LayerName}", false); b.p("VersionNumber", () => input.VersionNumber.toString(), "{VersionNumber}", false); const query = map({ [_RI]: [, input[_RI]], }); let body; body = JSON.stringify(take(input, { Action: [], OrganizationId: [], Principal: [], StatementId: [], })); b.m("POST").h(headers).q(query).b(body); return b.build(); }; export const se_AddPermissionCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/functions/{FunctionName}/policy"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; body = JSON.stringify(take(input, { Action: [], EventSourceToken: [], FunctionUrlAuthType: [], Principal: [], PrincipalOrgID: [], RevisionId: [], SourceAccount: [], SourceArn: [], StatementId: [], })); b.m("POST").h(headers).q(query).b(body); return b.build(); }; export const se_CreateAliasCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/functions/{FunctionName}/aliases"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; body = JSON.stringify(take(input, { Description: [], FunctionVersion: [], Name: [], RoutingConfig: (_) => se_AliasRoutingConfiguration(_, context), })); b.m("POST").h(headers).b(body); return b.build(); }; export const se_CreateCodeSigningConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2020-04-22/code-signing-configs"); let body; body = JSON.stringify(take(input, { AllowedPublishers: (_) => _json(_), CodeSigningPolicies: (_) => _json(_), Description: [], Tags: (_) => _json(_), })); b.m("POST").h(headers).b(body); return b.build(); }; export const se_CreateEventSourceMappingCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/event-source-mappings"); let body; body = JSON.stringify(take(input, { AmazonManagedKafkaEventSourceConfig: (_) => _json(_), BatchSize: [], BisectBatchOnFunctionError: [], DestinationConfig: (_) => _json(_), DocumentDBEventSourceConfig: (_) => _json(_), Enabled: [], EventSourceArn: [], FilterCriteria: (_) => _json(_), FunctionName: [], FunctionResponseTypes: (_) => _json(_), KMSKeyArn: [], MaximumBatchingWindowInSeconds: [], MaximumRecordAgeInSeconds: [], MaximumRetryAttempts: [], MetricsConfig: (_) => _json(_), ParallelizationFactor: [], ProvisionedPollerConfig: (_) => _json(_), Queues: (_) => _json(_), ScalingConfig: (_) => _json(_), SelfManagedEventSource: (_) => _json(_), SelfManagedKafkaEventSourceConfig: (_) => _json(_), SourceAccessConfigurations: (_) => _json(_), StartingPosition: [], StartingPositionTimestamp: (_) => _.getTime() / 1000, Tags: (_) => _json(_), Topics: (_) => _json(_), TumblingWindowInSeconds: [], })); b.m("POST").h(headers).b(body); return b.build(); }; export const se_CreateFunctionCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/functions"); let body; body = JSON.stringify(take(input, { Architectures: (_) => _json(_), Code: (_) => se_FunctionCode(_, context), CodeSigningConfigArn: [], DeadLetterConfig: (_) => _json(_), Description: [], Environment: (_) => _json(_), EphemeralStorage: (_) => _json(_), FileSystemConfigs: (_) => _json(_), FunctionName: [], Handler: [], ImageConfig: (_) => _json(_), KMSKeyArn: [], Layers: (_) => _json(_), LoggingConfig: (_) => _json(_), MemorySize: [], PackageType: [], Publish: [], Role: [], Runtime: [], SnapStart: (_) => _json(_), Tags: (_) => _json(_), Timeout: [], TracingConfig: (_) => _json(_), VpcConfig: (_) => _json(_), })); b.m("POST").h(headers).b(body); return b.build(); }; export const se_CreateFunctionUrlConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2021-10-31/functions/{FunctionName}/url"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; body = JSON.stringify(take(input, { AuthType: [], Cors: (_) => _json(_), InvokeMode: [], })); b.m("POST").h(headers).q(query).b(body); return b.build(); }; export const se_DeleteAliasCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}/aliases/{Name}"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); b.p("Name", () => input.Name, "{Name}", false); let body; b.m("DELETE").h(headers).b(body); return b.build(); }; export const se_DeleteCodeSigningConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2020-04-22/code-signing-configs/{CodeSigningConfigArn}"); b.p("CodeSigningConfigArn", () => input.CodeSigningConfigArn, "{CodeSigningConfigArn}", false); let body; b.m("DELETE").h(headers).b(body); return b.build(); }; export const se_DeleteEventSourceMappingCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/event-source-mappings/{UUID}"); b.p("UUID", () => input.UUID, "{UUID}", false); let body; b.m("DELETE").h(headers).b(body); return b.build(); }; export const se_DeleteFunctionCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("DELETE").h(headers).q(query).b(body); return b.build(); }; export const se_DeleteFunctionCodeSigningConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2020-06-30/functions/{FunctionName}/code-signing-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; b.m("DELETE").h(headers).b(body); return b.build(); }; export const se_DeleteFunctionConcurrencyCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2017-10-31/functions/{FunctionName}/concurrency"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; b.m("DELETE").h(headers).b(body); return b.build(); }; export const se_DeleteFunctionEventInvokeConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2019-09-25/functions/{FunctionName}/event-invoke-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("DELETE").h(headers).q(query).b(body); return b.build(); }; export const se_DeleteFunctionUrlConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2021-10-31/functions/{FunctionName}/url"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("DELETE").h(headers).q(query).b(body); return b.build(); }; export const se_DeleteLayerVersionCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2018-10-31/layers/{LayerName}/versions/{VersionNumber}"); b.p("LayerName", () => input.LayerName, "{LayerName}", false); b.p("VersionNumber", () => input.VersionNumber.toString(), "{VersionNumber}", false); let body; b.m("DELETE").h(headers).b(body); return b.build(); }; export const se_DeleteProvisionedConcurrencyConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2019-09-30/functions/{FunctionName}/provisioned-concurrency"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, __expectNonNull(input[_Q], `Qualifier`)], }); let body; b.m("DELETE").h(headers).q(query).b(body); return b.build(); }; export const se_GetAccountSettingsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2016-08-19/account-settings"); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetAliasCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}/aliases/{Name}"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); b.p("Name", () => input.Name, "{Name}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetCodeSigningConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2020-04-22/code-signing-configs/{CodeSigningConfigArn}"); b.p("CodeSigningConfigArn", () => input.CodeSigningConfigArn, "{CodeSigningConfigArn}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetEventSourceMappingCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/event-source-mappings/{UUID}"); b.p("UUID", () => input.UUID, "{UUID}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetFunctionCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_GetFunctionCodeSigningConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2020-06-30/functions/{FunctionName}/code-signing-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetFunctionConcurrencyCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2019-09-30/functions/{FunctionName}/concurrency"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetFunctionConfigurationCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}/configuration"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_GetFunctionEventInvokeConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2019-09-25/functions/{FunctionName}/event-invoke-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_GetFunctionRecursionConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2024-08-31/functions/{FunctionName}/recursion-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetFunctionUrlConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2021-10-31/functions/{FunctionName}/url"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_GetLayerVersionCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2018-10-31/layers/{LayerName}/versions/{VersionNumber}"); b.p("LayerName", () => input.LayerName, "{LayerName}", false); b.p("VersionNumber", () => input.VersionNumber.toString(), "{VersionNumber}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetLayerVersionByArnCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2018-10-31/layers"); const query = map({ [_f]: [, "LayerVersion"], [_A]: [, __expectNonNull(input[_A], `Arn`)], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_GetLayerVersionPolicyCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy"); b.p("LayerName", () => input.LayerName, "{LayerName}", false); b.p("VersionNumber", () => input.VersionNumber.toString(), "{VersionNumber}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_GetPolicyCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}/policy"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_GetProvisionedConcurrencyConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2019-09-30/functions/{FunctionName}/provisioned-concurrency"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, __expectNonNull(input[_Q], `Qualifier`)], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_GetRuntimeManagementConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2021-07-20/functions/{FunctionName}/runtime-management-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_InvokeCommand = async (input, context) => { const b = rb(input, context); const headers = map({}, isSerializableHeaderValue, { "content-type": "application/octet-stream", [_xait]: input[_IT], [_xalt]: input[_LT], [_xacc]: input[_CC], }); b.bp("/2015-03-31/functions/{FunctionName}/invocations"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; if (input.Payload !== undefined) { body = input.Payload; } b.m("POST").h(headers).q(query).b(body); return b.build(); }; export const se_InvokeAsyncCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/octet-stream", }; b.bp("/2014-11-13/functions/{FunctionName}/invoke-async"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; if (input.InvokeArgs !== undefined) { body = input.InvokeArgs; } b.m("POST").h(headers).b(body); return b.build(); }; export const se_InvokeWithResponseStreamCommand = async (input, context) => { const b = rb(input, context); const headers = map({}, isSerializableHeaderValue, { "content-type": "application/octet-stream", [_xait]: input[_IT], [_xalt]: input[_LT], [_xacc]: input[_CC], }); b.bp("/2021-11-15/functions/{FunctionName}/response-streaming-invocations"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; if (input.Payload !== undefined) { body = input.Payload; } b.m("POST").h(headers).q(query).b(body); return b.build(); }; export const se_ListAliasesCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}/aliases"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_FV]: [, input[_FV]], [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListCodeSigningConfigsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2020-04-22/code-signing-configs"); const query = map({ [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListEventSourceMappingsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/event-source-mappings"); const query = map({ [_ESA]: [, input[_ESA]], [_FN]: [, input[_FN]], [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListFunctionEventInvokeConfigsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2019-09-25/functions/{FunctionName}/event-invoke-config/list"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListFunctionsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions"); const query = map({ [_MR]: [, input[_MR]], [_FV]: [, input[_FV]], [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListFunctionsByCodeSigningConfigCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2020-04-22/code-signing-configs/{CodeSigningConfigArn}/functions"); b.p("CodeSigningConfigArn", () => input.CodeSigningConfigArn, "{CodeSigningConfigArn}", false); const query = map({ [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListFunctionUrlConfigsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2021-10-31/functions/{FunctionName}/urls"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListLayersCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2018-10-31/layers"); const query = map({ [_CR]: [, input[_CR]], [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], [_CA]: [, input[_CA]], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListLayerVersionsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2018-10-31/layers/{LayerName}/versions"); b.p("LayerName", () => input.LayerName, "{LayerName}", false); const query = map({ [_CR]: [, input[_CR]], [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], [_CA]: [, input[_CA]], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListProvisionedConcurrencyConfigsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2019-09-30/functions/{FunctionName}/provisioned-concurrency"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_L]: [, "ALL"], [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_ListTagsCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2017-03-31/tags/{Resource}"); b.p("Resource", () => input.Resource, "{Resource}", false); let body; b.m("GET").h(headers).b(body); return b.build(); }; export const se_ListVersionsByFunctionCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}/versions"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_M]: [, input[_M]], [_MI]: [() => input.MaxItems !== void 0, () => input[_MI].toString()], }); let body; b.m("GET").h(headers).q(query).b(body); return b.build(); }; export const se_PublishLayerVersionCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2018-10-31/layers/{LayerName}/versions"); b.p("LayerName", () => input.LayerName, "{LayerName}", false); let body; body = JSON.stringify(take(input, { CompatibleArchitectures: (_) => _json(_), CompatibleRuntimes: (_) => _json(_), Content: (_) => se_LayerVersionContentInput(_, context), Description: [], LicenseInfo: [], })); b.m("POST").h(headers).b(body); return b.build(); }; export const se_PublishVersionCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/functions/{FunctionName}/versions"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; body = JSON.stringify(take(input, { CodeSha256: [], Description: [], RevisionId: [], })); b.m("POST").h(headers).b(body); return b.build(); }; export const se_PutFunctionCodeSigningConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2020-06-30/functions/{FunctionName}/code-signing-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; body = JSON.stringify(take(input, { CodeSigningConfigArn: [], })); b.m("PUT").h(headers).b(body); return b.build(); }; export const se_PutFunctionConcurrencyCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2017-10-31/functions/{FunctionName}/concurrency"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; body = JSON.stringify(take(input, { ReservedConcurrentExecutions: [], })); b.m("PUT").h(headers).b(body); return b.build(); }; export const se_PutFunctionEventInvokeConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2019-09-25/functions/{FunctionName}/event-invoke-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; body = JSON.stringify(take(input, { DestinationConfig: (_) => _json(_), MaximumEventAgeInSeconds: [], MaximumRetryAttempts: [], })); b.m("PUT").h(headers).q(query).b(body); return b.build(); }; export const se_PutFunctionRecursionConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2024-08-31/functions/{FunctionName}/recursion-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; body = JSON.stringify(take(input, { RecursiveLoop: [], })); b.m("PUT").h(headers).b(body); return b.build(); }; export const se_PutProvisionedConcurrencyConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2019-09-30/functions/{FunctionName}/provisioned-concurrency"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, __expectNonNull(input[_Q], `Qualifier`)], }); let body; body = JSON.stringify(take(input, { ProvisionedConcurrentExecutions: [], })); b.m("PUT").h(headers).q(query).b(body); return b.build(); }; export const se_PutRuntimeManagementConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2021-07-20/functions/{FunctionName}/runtime-management-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; body = JSON.stringify(take(input, { RuntimeVersionArn: [], UpdateRuntimeOn: [], })); b.m("PUT").h(headers).q(query).b(body); return b.build(); }; export const se_RemoveLayerVersionPermissionCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy/{StatementId}"); b.p("LayerName", () => input.LayerName, "{LayerName}", false); b.p("VersionNumber", () => input.VersionNumber.toString(), "{VersionNumber}", false); b.p("StatementId", () => input.StatementId, "{StatementId}", false); const query = map({ [_RI]: [, input[_RI]], }); let body; b.m("DELETE").h(headers).q(query).b(body); return b.build(); }; export const se_RemovePermissionCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2015-03-31/functions/{FunctionName}/policy/{StatementId}"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); b.p("StatementId", () => input.StatementId, "{StatementId}", false); const query = map({ [_Q]: [, input[_Q]], [_RI]: [, input[_RI]], }); let body; b.m("DELETE").h(headers).q(query).b(body); return b.build(); }; export const se_TagResourceCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2017-03-31/tags/{Resource}"); b.p("Resource", () => input.Resource, "{Resource}", false); let body; body = JSON.stringify(take(input, { Tags: (_) => _json(_), })); b.m("POST").h(headers).b(body); return b.build(); }; export const se_UntagResourceCommand = async (input, context) => { const b = rb(input, context); const headers = {}; b.bp("/2017-03-31/tags/{Resource}"); b.p("Resource", () => input.Resource, "{Resource}", false); const query = map({ [_tK]: [__expectNonNull(input.TagKeys, `TagKeys`) != null, () => input[_TK] || []], }); let body; b.m("DELETE").h(headers).q(query).b(body); return b.build(); }; export const se_UpdateAliasCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/functions/{FunctionName}/aliases/{Name}"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); b.p("Name", () => input.Name, "{Name}", false); let body; body = JSON.stringify(take(input, { Description: [], FunctionVersion: [], RevisionId: [], RoutingConfig: (_) => se_AliasRoutingConfiguration(_, context), })); b.m("PUT").h(headers).b(body); return b.build(); }; export const se_UpdateCodeSigningConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2020-04-22/code-signing-configs/{CodeSigningConfigArn}"); b.p("CodeSigningConfigArn", () => input.CodeSigningConfigArn, "{CodeSigningConfigArn}", false); let body; body = JSON.stringify(take(input, { AllowedPublishers: (_) => _json(_), CodeSigningPolicies: (_) => _json(_), Description: [], })); b.m("PUT").h(headers).b(body); return b.build(); }; export const se_UpdateEventSourceMappingCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/event-source-mappings/{UUID}"); b.p("UUID", () => input.UUID, "{UUID}", false); let body; body = JSON.stringify(take(input, { BatchSize: [], BisectBatchOnFunctionError: [], DestinationConfig: (_) => _json(_), DocumentDBEventSourceConfig: (_) => _json(_), Enabled: [], FilterCriteria: (_) => _json(_), FunctionName: [], FunctionResponseTypes: (_) => _json(_), KMSKeyArn: [], MaximumBatchingWindowInSeconds: [], MaximumRecordAgeInSeconds: [], MaximumRetryAttempts: [], MetricsConfig: (_) => _json(_), ParallelizationFactor: [], ProvisionedPollerConfig: (_) => _json(_), ScalingConfig: (_) => _json(_), SourceAccessConfigurations: (_) => _json(_), TumblingWindowInSeconds: [], })); b.m("PUT").h(headers).b(body); return b.build(); }; export const se_UpdateFunctionCodeCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/functions/{FunctionName}/code"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; body = JSON.stringify(take(input, { Architectures: (_) => _json(_), DryRun: [], ImageUri: [], Publish: [], RevisionId: [], S3Bucket: [], S3Key: [], S3ObjectVersion: [], SourceKMSKeyArn: [], ZipFile: (_) => context.base64Encoder(_), })); b.m("PUT").h(headers).b(body); return b.build(); }; export const se_UpdateFunctionConfigurationCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2015-03-31/functions/{FunctionName}/configuration"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); let body; body = JSON.stringify(take(input, { DeadLetterConfig: (_) => _json(_), Description: [], Environment: (_) => _json(_), EphemeralStorage: (_) => _json(_), FileSystemConfigs: (_) => _json(_), Handler: [], ImageConfig: (_) => _json(_), KMSKeyArn: [], Layers: (_) => _json(_), LoggingConfig: (_) => _json(_), MemorySize: [], RevisionId: [], Role: [], Runtime: [], SnapStart: (_) => _json(_), Timeout: [], TracingConfig: (_) => _json(_), VpcConfig: (_) => _json(_), })); b.m("PUT").h(headers).b(body); return b.build(); }; export const se_UpdateFunctionEventInvokeConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2019-09-25/functions/{FunctionName}/event-invoke-config"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; body = JSON.stringify(take(input, { DestinationConfig: (_) => _json(_), MaximumEventAgeInSeconds: [], MaximumRetryAttempts: [], })); b.m("POST").h(headers).q(query).b(body); return b.build(); }; export const se_UpdateFunctionUrlConfigCommand = async (input, context) => { const b = rb(input, context); const headers = { "content-type": "application/json", }; b.bp("/2021-10-31/functions/{FunctionName}/url"); b.p("FunctionName", () => input.FunctionName, "{FunctionName}", false); const query = map({ [_Q]: [, input[_Q]], }); let body; body = JSON.stringify(take(input, { AuthType: [], Cors: (_) => _json(_), InvokeMode: [], })); b.m("PUT").h(headers).q(query).b(body); return b.build(); }; export const de_AddLayerVersionPermissionCommand = async (output, context) => { if (output.statusCode !== 201 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { RevisionId: __expectString, Statement: __expectString, }); Object.assign(contents, doc); return contents; }; export const de_AddPermissionCommand = async (output, context) => { if (output.statusCode !== 201 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { Statement: __expectString, }); Object.assign(contents, doc); return contents; }; export const de_CreateAliasCommand = async (output, context) => { if (output.statusCode !== 201 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { AliasArn: __expectString, Description: __expectString, FunctionVersion: __expectString, Name: __expectString, RevisionId: __expectString, RoutingConfig: (_) => de_AliasRoutingConfiguration(_, context), }); Object.assign(contents, doc); return contents; }; export const de_CreateCodeSigningConfigCommand = async (output, context) => { if (output.statusCode !== 201 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { CodeSigningConfig: _json, }); Object.assign(contents, doc); return contents; }; export const de_CreateEventSourceMappingCommand = async (output, context) => { if (output.statusCode !== 202 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { AmazonManagedKafkaEventSourceConfig: _json, BatchSize: __expectInt32, BisectBatchOnFunctionError: __expectBoolean, DestinationConfig: _json, DocumentDBEventSourceConfig: _json, EventSourceArn: __expectString, EventSourceMappingArn: __expectString, FilterCriteria: _json, FilterCriteriaError: _json, FunctionArn: __expectString, FunctionResponseTypes: _json, KMSKeyArn: __expectString, LastModified: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), LastProcessingResult: __expectString, MaximumBatchingWindowInSeconds: __expectInt32, MaximumRecordAgeInSeconds: __expectInt32, MaximumRetryAttempts: __expectInt32, MetricsConfig: _json, ParallelizationFactor: __expectInt32, ProvisionedPollerConfig: _json, Queues: _json, ScalingConfig: _json, SelfManagedEventSource: _json, SelfManagedKafkaEventSourceConfig: _json, SourceAccessConfigurations: _json, StartingPosition: __expectString, StartingPositionTimestamp: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), State: __expectString, StateTransitionReason: __expectString, Topics: _json, TumblingWindowInSeconds: __expectInt32, UUID: __expectString, }); Object.assign(contents, doc); return contents; }; export const de_CreateFunctionCommand = async (output, context) => { if (output.statusCode !== 201 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { Architectures: _json, CodeSha256: __expectString, CodeSize: __expectLong, DeadLetterConfig: _json, Description: __expectString, Environment: _json, EphemeralStorage: _json, FileSystemConfigs: _json, FunctionArn: __expectString, FunctionName: __expectString, Handler: __expectString, ImageConfigResponse: _json, KMSKeyArn: __expectString, LastModified: __expectString, LastUpdateStatus: __expectString, LastUpdateStatusReason: __expectString, LastUpdateStatusReasonCode: __expectString, Layers: _json, LoggingConfig: _json, MasterArn: __expectString, MemorySize: __expectInt32, PackageType: __expectString, RevisionId: __expectString, Role: __expectString, Runtime: __expectString, RuntimeVersionConfig: _json, SigningJobArn: __expectString, SigningProfileVersionArn: __expectString, SnapStart: _json, State: __expectString, StateReason: __expectString, StateReasonCode: __expectString, Timeout: __expectInt32, TracingConfig: _json, Version: __expectString, VpcConfig: _json, }); Object.assign(contents, doc); return contents; }; export const de_CreateFunctionUrlConfigCommand = async (output, context) => { if (output.statusCode !== 201 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { AuthType: __expectString, Cors: _json, CreationTime: __expectString, FunctionArn: __expectString, FunctionUrl: __expectString, InvokeMode: __expectString, }); Object.assign(contents, doc); return contents; }; export const de_DeleteAliasCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_DeleteCodeSigningConfigCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_DeleteEventSourceMappingCommand = async (output, context) => { if (output.statusCode !== 202 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { AmazonManagedKafkaEventSourceConfig: _json, BatchSize: __expectInt32, BisectBatchOnFunctionError: __expectBoolean, DestinationConfig: _json, DocumentDBEventSourceConfig: _json, EventSourceArn: __expectString, EventSourceMappingArn: __expectString, FilterCriteria: _json, FilterCriteriaError: _json, FunctionArn: __expectString, FunctionResponseTypes: _json, KMSKeyArn: __expectString, LastModified: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), LastProcessingResult: __expectString, MaximumBatchingWindowInSeconds: __expectInt32, MaximumRecordAgeInSeconds: __expectInt32, MaximumRetryAttempts: __expectInt32, MetricsConfig: _json, ParallelizationFactor: __expectInt32, ProvisionedPollerConfig: _json, Queues: _json, ScalingConfig: _json, SelfManagedEventSource: _json, SelfManagedKafkaEventSourceConfig: _json, SourceAccessConfigurations: _json, StartingPosition: __expectString, StartingPositionTimestamp: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), State: __expectString, StateTransitionReason: __expectString, Topics: _json, TumblingWindowInSeconds: __expectInt32, UUID: __expectString, }); Object.assign(contents, doc); return contents; }; export const de_DeleteFunctionCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_DeleteFunctionCodeSigningConfigCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_DeleteFunctionConcurrencyCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_DeleteFunctionEventInvokeConfigCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_DeleteFunctionUrlConfigCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_DeleteLayerVersionCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_DeleteProvisionedConcurrencyConfigCommand = async (output, context) => { if (output.statusCode !== 204 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); await collectBody(output.body, context); return contents; }; export const de_GetAccountSettingsCommand = async (output, context) => { if (output.statusCode !== 200 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { AccountLimit: _json, AccountUsage: _json, }); Object.assign(contents, doc); return contents; }; export const de_GetAliasCommand = async (output, context) => { if (output.statusCode !== 200 && output.statusCode >= 300) { return de_CommandError(output, context); } const contents = map({ $metadata: deserializeMetadata(output), }); const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { AliasArn: __expectString, Description: __expectString, FunctionVersion: __expectString, Name: __expectString, RevisionId: __expectString, RoutingConfig: (_) => de_AliasRoutingConfigur