@kitchenshelf/serverless-rspack
Version:
[Serverless Framework](https://www.serverless.com) plugin for zero-config JavaScript and TypeScript code bundling using the high performance Rust-based JavaScript bundler [`rspack`](https://rspack.dev/guide/start/introduction)
94 lines (93 loc) • 6.41 kB
TypeScript
import Serverless from 'serverless';
import { z } from 'zod';
export declare const PluginOptionsSchema: import("zod").ZodObject<{
keepOutputDirectory: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>;
zipConcurrency: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNumber>>;
stats: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>;
doctor: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodBoolean, import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodObject<{
enable: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>;
outputDirectory: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
}, "strip", import("zod").ZodTypeAny, {
enable: boolean;
outputDirectory?: string | null | undefined;
}, {
enable?: boolean | undefined;
outputDirectory?: string | null | undefined;
}>>>]>>>;
config: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodObject<{
path: import("zod").ZodString;
strategy: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodEnum<["override", "combine"]>>>;
}, "strip", import("zod").ZodTypeAny, {
path: string;
strategy: "override" | "combine";
}, {
path: string;
strategy?: "override" | "combine" | undefined;
}>>>;
scripts: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>>;
esm: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>;
mode: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodEnum<["production", "development", "none"]>>>;
sourcemap: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodLiteral<false>, import("zod").ZodEnum<["eval", "cheap-source-map", "cheap-module-source-map", "source-map", "inline-cheap-source-map", "inline-cheap-module-source-map", "inline-source-map", "inline-nosources-cheap-source-map", "inline-nosources-cheap-module-source-map", "inline-nosources-source-map", "nosources-cheap-source-map", "nosources-cheap-module-source-map", "nosources-source-map", "hidden-nosources-cheap-source-map", "hidden-nosources-cheap-module-source-map", "hidden-nosources-source-map", "hidden-cheap-source-map", "hidden-cheap-module-source-map", "hidden-source-map", "eval-cheap-source-map", "eval-cheap-module-source-map", "eval-source-map", "eval-nosources-cheap-source-map", "eval-nosources-cheap-module-source-map", "eval-nosources-source-map"]>]>>;
tsConfig: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
externals: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>>;
}, "strip", import("zod").ZodTypeAny, {
keepOutputDirectory: boolean;
zipConcurrency: number;
stats: boolean;
esm: boolean;
mode: "production" | "development" | "none";
doctor?: boolean | {
enable: boolean;
outputDirectory?: string | null | undefined;
} | null | undefined;
config?: {
path: string;
strategy: "override" | "combine";
} | null | undefined;
scripts?: string[] | null | undefined;
sourcemap?: false | "eval" | "cheap-source-map" | "cheap-module-source-map" | "source-map" | "inline-cheap-source-map" | "inline-cheap-module-source-map" | "inline-source-map" | "inline-nosources-cheap-source-map" | "inline-nosources-cheap-module-source-map" | "inline-nosources-source-map" | "nosources-cheap-source-map" | "nosources-cheap-module-source-map" | "nosources-source-map" | "hidden-nosources-cheap-source-map" | "hidden-nosources-cheap-module-source-map" | "hidden-nosources-source-map" | "hidden-cheap-source-map" | "hidden-cheap-module-source-map" | "hidden-source-map" | "eval-cheap-source-map" | "eval-cheap-module-source-map" | "eval-source-map" | "eval-nosources-cheap-source-map" | "eval-nosources-cheap-module-source-map" | "eval-nosources-source-map" | undefined;
tsConfig?: string | null | undefined;
externals?: string[] | null | undefined;
}, {
keepOutputDirectory?: boolean | undefined;
zipConcurrency?: number | undefined;
stats?: boolean | undefined;
doctor?: boolean | {
enable?: boolean | undefined;
outputDirectory?: string | null | undefined;
} | null | undefined;
config?: {
path: string;
strategy?: "override" | "combine" | undefined;
} | null | undefined;
scripts?: string[] | null | undefined;
esm?: boolean | undefined;
mode?: "production" | "development" | "none" | undefined;
sourcemap?: false | "eval" | "cheap-source-map" | "cheap-module-source-map" | "source-map" | "inline-cheap-source-map" | "inline-cheap-module-source-map" | "inline-source-map" | "inline-nosources-cheap-source-map" | "inline-nosources-cheap-module-source-map" | "inline-nosources-source-map" | "nosources-cheap-source-map" | "nosources-cheap-module-source-map" | "nosources-source-map" | "hidden-nosources-cheap-source-map" | "hidden-nosources-cheap-module-source-map" | "hidden-nosources-source-map" | "hidden-cheap-source-map" | "hidden-cheap-module-source-map" | "hidden-source-map" | "eval-cheap-source-map" | "eval-cheap-module-source-map" | "eval-source-map" | "eval-nosources-cheap-source-map" | "eval-nosources-cheap-module-source-map" | "eval-nosources-source-map" | undefined;
tsConfig?: string | null | undefined;
externals?: string[] | null | undefined;
}>;
export type PluginOptions = z.infer<typeof PluginOptionsSchema>;
export type RsPackFunctionDefinitionHandler = {
rspack?: RsPackFunctionDefinition | boolean;
} & Serverless.FunctionDefinitionHandler;
type RsPackFunctionDefinition = {
enable?: boolean;
scripts?: string[];
};
export declare function isInvokeOptions(options: Serverless.Options): options is Serverless.Options & {
function: string;
};
export declare function isDeployFunctionOptions(options: Serverless.Options): options is Serverless.Options & {
function: string;
};
export type PluginFunctionEntries = {
[name: string]: {
import: string;
filename: string;
};
};
export type PluginFunctionScripts = {
[name: string]: string[];
};
export {};