import type { CreateSyncSystemPulumiAppParams } from "@webiny/pulumi-aws/apps/syncSystem/createSyncSystemPulumiApp.js";
import type { PluginCollection } from "@webiny/plugins/types";
export interface CreateSyncSystemAppParams extends CreateSyncSystemPulumiAppParams {
    plugins?: PluginCollection;
}
export declare function createSyncSystemApp(projectAppParams: CreateSyncSystemAppParams): {
    id: string;
    name: string;
    description: string;
    cli: {
        watch: {
            function: string;
        };
    };
    pulumi: import("@webiny/pulumi").PulumiApp<{
        sqs: import("@pulumi/pulumi").Output<import("@pulumi/aws/sqs/queue").Queue>;
        dynamoDb: import("@pulumi/pulumi").Output<import("@pulumi/aws/dynamodb/table").Table>;
        eventBus: import("@pulumi/pulumi").Output<import("@pulumi/aws/cloudwatch/eventBus").EventBus>;
        eventBusRule: import("@pulumi/pulumi").Output<import("@pulumi/aws/cloudwatch/eventRule").EventRule>;
        eventBusTarget: import("@pulumi/pulumi").Output<import("@pulumi/aws/cloudwatch/eventTarget").EventTarget>;
        eventBusPolicy: import("@pulumi/pulumi").Output<import("@pulumi/aws/sqs/queuePolicy").QueuePolicy>;
        workerLambda: import("@pulumi/pulumi").Output<import("@pulumi/aws/lambda/function").Function>;
        workerLambdaRole: import("@pulumi/pulumi").Output<import("@pulumi/aws/iam/role").Role>;
        resolverLambda: import("@pulumi/pulumi").Output<import("@pulumi/aws/lambda/function").Function>;
        resolverLambdaRole: import("@pulumi/pulumi").Output<import("@pulumi/aws/iam/role").Role>;
        resolverLambdaPolicy: import("@pulumi/pulumi").Output<import("@pulumi/aws/iam/policy").Policy>;
        resolverLambdaEventSourceMapping: import("@pulumi/pulumi").Output<import("@pulumi/aws/lambda/eventSourceMapping").EventSourceMapping>;
        primary: {};
        secondary: {};
    }>;
    plugins: (PluginCollection | import("@webiny/plugins/types").Plugin<Record<string, any>> | import("@webiny/plugins/types").PluginFactory)[];
};
