import { Collection, CollectionDefinition } from 'postman-collection';
import { IntegrationTestWriter, TestSuite, VariationWriter } from './application';
import { OpenApiParser } from './oas';
import { PostmanParser } from './postman';
import { PostmanSyncService } from './services';
import { PortmanConfig, Track } from './types';
import { PortmanOptions } from './types/PortmanOptions';
export declare class Portman {
    config: PortmanConfig;
    options: PortmanOptions;
    oasParser: OpenApiParser;
    postmanParser: PostmanParser;
    postmanCollection: Collection;
    portmanCollection: CollectionDefinition;
    testSuite: TestSuite;
    variationWriter: VariationWriter;
    integrationTestWriter: IntegrationTestWriter;
    postmanSyncService: PostmanSyncService;
    consoleLine: string;
    collectionFile: string;
    constructor(options: PortmanOptions);
    run(): Promise<void>;
    uploadOnly(): Promise<void>;
    before(): Promise<void>;
    after(): Promise<void>;
    parseOpenApiSpec(): Promise<void>;
    convertToPostmanCollection(): Promise<void>;
    injectTestSuite(): void;
    injectVariationTests(): void;
    runPortmanOverrides(postmanCollection: CollectionDefinition): Promise<void>;
    injectIntegrationTests(): void;
    injectVariationOverwrites(): void;
    moveContractTestsToFolder(): void;
    writePortmanCollectionToFile(): void;
    runNewmanSuite(): Promise<void>;
    syncCollectionToPostman(): Promise<void>;
    displayMissingTargets: (track: Track) => void;
}
