import type { CloudTasksClient } from "@google-cloud/tasks";
import type { TaskDefinitionRecord, TaskHandlerOptions, TypedTasksClient } from "./types";
/**
 * Creates a type-safe Tasks client for handling and scheduling tasks with
 * schema validation
 *
 * @param options - Options object containing client configuration
 * @param options.tasksClient - Google Cloud Tasks client instance
 * @param options.taskDefinitions - Object containing schema and options for
 *   each task
 * @param options.projectId - GCP project ID
 * @param options.region - GCP region for the Cloud Tasks
 * @param options.options - Optional configuration options for all tasks
 * @returns Type-safe Tasks client with scheduler and handler factories
 */
export declare function createTypedTasks<TaskDefs extends TaskDefinitionRecord<string>>({ client, definitions, projectId, region, options, }: {
    client: CloudTasksClient;
    definitions: TaskDefs;
    projectId: string;
    region: string;
    options?: TaskHandlerOptions;
}): TypedTasksClient<TaskDefs>;
//# sourceMappingURL=factory.d.ts.map