import { Duration } from '@salesforce/kit';
import { Org } from './org';
import { ScratchOrgInfo } from './scratchOrgTypes';
import { AuthFields, AuthInfo } from './authInfo';
export declare const DEFAULT_STREAM_TIMEOUT_MINUTES = 6;
export type ScratchOrgCreateResult = {
    username?: string;
    scratchOrgInfo?: ScratchOrgInfo;
    authInfo?: AuthInfo;
    authFields?: AuthFields;
    warnings: string[];
};
export type ScratchOrgCreateOptions = {
    /** the environment hub org */
    hubOrg: Org;
    /** The connected app consumer key. */
    connectedAppConsumerKey?: string;
    /** duration of the scratch org (in days) (default:1, min:1, max:30) */
    durationDays?: number;
    /** create the scratch org with no namespace */
    nonamespace?: boolean;
    /** create the scratch org with no second-generation package ancestors */
    noancestors?: boolean;
    /** the streaming client socket timeout (in minutes) must be an instance of the Duration utility class (default:6) */
    wait?: Duration;
    /** number of scratch org auth retries after scratch org is successfully signed up (default:0, min:0, max:10) */
    retry?: number;
    /** target server instance API version */
    apiversion?: string;
    /**
     * org definition in JSON format, stringified
     *
     * @deprecated use orgConfig
     */
    definitionjson?: string;
    /**
     * path to an org definition file
     *
     * @deprecated use orgConfig
     * */
    definitionfile?: string;
    /** overrides definitionjson */
    orgConfig?: Record<string, unknown>;
    /** OAuth client secret of personal connected app */
    clientSecret?: string;
    /** alias to set for the created org */
    alias?: string;
    /** after complete, set the org as the default */
    setDefault?: boolean;
    /** if false, do not use source tracking for this scratch org */
    tracksSource?: boolean;
};
export declare const scratchOrgResume: (jobId: string, timeout?: Duration) => Promise<ScratchOrgCreateResult>;
export declare const scratchOrgCreate: (options: ScratchOrgCreateOptions) => Promise<ScratchOrgCreateResult>;
