import { Command as $Command } from "@smithy/core/client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { GreengrassClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GreengrassClient"; import type { CreateFunctionDefinitionRequest, CreateFunctionDefinitionResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link CreateFunctionDefinitionCommand}. */ export interface CreateFunctionDefinitionCommandInput extends CreateFunctionDefinitionRequest { } /** * @public * * The output of {@link CreateFunctionDefinitionCommand}. */ export interface CreateFunctionDefinitionCommandOutput extends CreateFunctionDefinitionResponse, __MetadataBearer { } declare const CreateFunctionDefinitionCommand_base: { new (input: CreateFunctionDefinitionCommandInput): import("@smithy/core/client").CommandImpl; new (...[input]: [] | [CreateFunctionDefinitionCommandInput]): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): { [x: string]: unknown; }; }; /** * Creates a Lambda function definition which contains a list of Lambda functions and their configurations to be used in a group. You can create an initial version of the definition by providing a list of Lambda functions and their configurations now, or use ''CreateFunctionDefinitionVersion'' later. * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { GreengrassClient, CreateFunctionDefinitionCommand } from "@aws-sdk/client-greengrass"; // ES Modules import * // const { GreengrassClient, CreateFunctionDefinitionCommand } = require("@aws-sdk/client-greengrass"); // CommonJS import * // import type { GreengrassClientConfig } from "@aws-sdk/client-greengrass"; * const config = {}; // type is GreengrassClientConfig * const client = new GreengrassClient(config); * const input = { // CreateFunctionDefinitionRequest * AmznClientToken: "STRING_VALUE", * InitialVersion: { // FunctionDefinitionVersion * DefaultConfig: { // FunctionDefaultConfig * Execution: { // FunctionDefaultExecutionConfig * IsolationMode: "GreengrassContainer" || "NoContainer", * RunAs: { // FunctionRunAsConfig * Gid: Number("int"), * Uid: Number("int"), * }, * }, * }, * Functions: [ // __listOfFunction * { // Function * FunctionArn: "STRING_VALUE", * FunctionConfiguration: { // FunctionConfiguration * EncodingType: "binary" || "json", * Environment: { // FunctionConfigurationEnvironment * AccessSysfs: true || false, * Execution: { // FunctionExecutionConfig * IsolationMode: "GreengrassContainer" || "NoContainer", * RunAs: { * Gid: Number("int"), * Uid: Number("int"), * }, * }, * ResourceAccessPolicies: [ // __listOfResourceAccessPolicy * { // ResourceAccessPolicy * Permission: "ro" || "rw", * ResourceId: "STRING_VALUE", // required * }, * ], * Variables: { // __mapOf__string * "": "STRING_VALUE", * }, * }, * ExecArgs: "STRING_VALUE", * Executable: "STRING_VALUE", * MemorySize: Number("int"), * Pinned: true || false, * Timeout: Number("int"), * FunctionRuntimeOverride: "STRING_VALUE", * }, * Id: "STRING_VALUE", // required * }, * ], * }, * Name: "STRING_VALUE", * tags: { // Tags * "": "STRING_VALUE", * }, * }; * const command = new CreateFunctionDefinitionCommand(input); * const response = await client.send(command); * // { // CreateFunctionDefinitionResponse * // Arn: "STRING_VALUE", * // CreationTimestamp: "STRING_VALUE", * // Id: "STRING_VALUE", * // LastUpdatedTimestamp: "STRING_VALUE", * // LatestVersion: "STRING_VALUE", * // LatestVersionArn: "STRING_VALUE", * // Name: "STRING_VALUE", * // }; * * ``` * * @param CreateFunctionDefinitionCommandInput - {@link CreateFunctionDefinitionCommandInput} * @returns {@link CreateFunctionDefinitionCommandOutput} * @see {@link CreateFunctionDefinitionCommandInput} for command's `input` shape. * @see {@link CreateFunctionDefinitionCommandOutput} for command's `response` shape. * @see {@link GreengrassClientResolvedConfig | config} for GreengrassClient's `config` shape. * * @throws {@link BadRequestException} (client fault) * General error information. * * @throws {@link GreengrassServiceException} *

Base exception class for all service exceptions from Greengrass service.

* * * @public */ export declare class CreateFunctionDefinitionCommand extends CreateFunctionDefinitionCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateFunctionDefinitionRequest; output: CreateFunctionDefinitionResponse; }; sdk: { input: CreateFunctionDefinitionCommandInput; output: CreateFunctionDefinitionCommandOutput; }; }; }