import { ExecuteGoalResult } from "../../../api/goal/ExecuteGoalResult";
import { GoalInvocation } from "../../../api/goal/GoalInvocation";
import { GoalScheduler } from "../../../api/goal/support/GoalScheduler";
export interface KubernetesFulfillmentOptions {
    registration?: string | ((gi: GoalInvocation) => Promise<string>);
    name?: string | ((gi: GoalInvocation) => Promise<string>);
}
export declare function defaultKubernetesFulfillmentOptions(): KubernetesFulfillmentOptions;
/**
 * GoalScheduler implementation that redirects goals to a registered k8s-sdm for
 * fulfillment.
 *
 * This is useful in runtimes that don't support launching container goals such as
 * FaaS environments like Google Cloud Functions.
 */
export declare class KubernetesFulfillmentGoalScheduler implements GoalScheduler {
    private readonly options;
    constructor(options?: KubernetesFulfillmentOptions);
    schedule(gi: GoalInvocation): Promise<ExecuteGoalResult>;
    supports(gi: GoalInvocation): Promise<boolean>;
}
//# sourceMappingURL=KubernetesFulfillmentGoalScheduler.d.ts.map