import type { Handler, MethodSpec } from "@metamask/kernel-rpc-methods";
import type { Infer } from "@metamask/superstruct";
import type { VatDeliveryResult } from "../../types.cjs";
declare const VatDeliveryParamsStruct: import("@metamask/superstruct").Struct<["retireImports", string[]] | ["retireExports", string[]] | ["message", string, {
    methargs: {
        body: string;
        slots: string[];
    };
    result?: string | null;
}] | ["notify", [string, boolean, {
    body: string;
    slots: string[];
}][]] | ["dropExports", string[]] | ["changeVatOptions", Record<string, import("@metamask/utils").Json>] | ["startVat", {
    body: string;
    slots: string[];
}] | ["stopVat", {
    body: string;
    slots: string[];
}] | ["bringOutYourDead"], null>;
type VatDeliveryParams = Infer<typeof VatDeliveryParamsStruct>;
export type DeliverSpec = MethodSpec<'deliver', VatDeliveryParams, Promise<VatDeliveryResult>>;
export declare const deliverSpec: DeliverSpec;
export type HandleDelivery = (params: VatDeliveryParams) => Promise<VatDeliveryResult>;
type DeliverHooks = {
    handleDelivery: HandleDelivery;
};
export type DeliverHandler = Handler<'deliver', VatDeliveryParams, Promise<VatDeliveryResult>, DeliverHooks>;
export declare const deliverHandler: DeliverHandler;
export {};
//# sourceMappingURL=deliver.d.cts.map