import { AttributeResolutionDirectiveSet, CdmCorpusDefinition, CdmManifestDefinition, stringSpewCatcher } from '../../../internal';
/**
 * Common utilities used by resolution tests.
 */
export declare const resolutionTestUtils: {
    /**
     * Function used to test resolving an environment.
     * Writes a helper function used for debugging.
     * Asserts the result matches the expected result stored in a file.
     * @param testsSubPath Tests sub-folder name
     * @param testName The name of the test. It is used to decide the path of input / output files.
     * @param manifestName The name of the manifest to be used.
     */
    resolveSaveDebuggingFileAndAssert(testsSubPath: string, testName: string, manifestName: string, doesWriteDebuggingFiles?: boolean): Promise<void>;
    /**
     * Resolve the entities in the given manifest
     * @param testsSubPath Tests sub-folder name
     * @param testName The name of the test. It is used to decide the path of input / output files.
     * @param manifestName The name of the manifest to be used.
     * @return the resolved manifest as a promise.
     */
    resolveEnvironment(testsSubPath: string, testName: string, manifestName: string): Promise<string>;
    /**
     * @internal
     * Get the text version of all the resolved entities.
     * @param cdmCorpus The CDM corpus.
     * @param directives The directives to use while getting the resolved entities.
     * @param manifest The manifest to be resolved.
     * @param spew The object used to store the text to be returned.
     * @returns The text version of the resolved entities. (it's in a form that facilitates debugging)
     */
    listAllResolved(cdmCorpus: CdmCorpusDefinition, directives: AttributeResolutionDirectiveSet, manifest: CdmManifestDefinition, spew: stringSpewCatcher): Promise<string>;
};
