import { Configuration } from "@atomist/automation-client/lib/configuration";
import { EventFired, HandleEvent } from "@atomist/automation-client/lib/HandleEvent";
import { HandlerContext } from "@atomist/automation-client/lib/HandlerContext";
import { HandlerResult } from "@atomist/automation-client/lib/HandlerResult";
import { PreferenceStoreFactory } from "../../../../api/context/preferenceStore";
import { PushListener } from "../../../../api/listener/PushListener";
import { CredentialsResolver } from "../../../../spi/credentials/CredentialsResolver";
import { RepoRefResolver } from "../../../../spi/repo-ref/RepoRefResolver";
import * as schema from "../../../../typings/types";
/**
 * A new repo has been created, and it has some code in it.
 */
export declare class OnFirstPushToRepo implements HandleEvent<schema.OnFirstPushToRepo.Subscription> {
    private readonly actions;
    private readonly repoRefResolver;
    private readonly credentialsFactory;
    private readonly preferenceStoreFactory;
    configuration: Configuration;
    constructor(actions: PushListener[], repoRefResolver: RepoRefResolver, credentialsFactory: CredentialsResolver, preferenceStoreFactory: PreferenceStoreFactory);
    handle(event: EventFired<schema.OnFirstPushToRepo.Subscription>, context: HandlerContext): Promise<HandlerResult>;
}
//# sourceMappingURL=OnFirstPushToRepo.d.ts.map