import { Dictionary } from '@azure-tools/linq';
import { SchemaDetails, LanguageDetails, SchemaDefinitionResolver } from '../llcsharp/exports';
import { State } from './state';
import { Project as codeDomProject } from '@azure-tools/codegen-csharp';
import { EnumNamespace } from '../enums/namespace';
import { ModelExtensionsNamespace } from '../models/model-extensions';
import { ModuleNamespace } from '../module/module-namespace';
import { AutorestExtensionHost as Host } from '@autorest/extension-base';
import { PropertyDetails, exportedModels as T } from '@azure-tools/codemodel-v3';
import { DeepPartial } from '@azure-tools/codegen';
import { SdkModel } from '../utils/SdkModel';
import { Helper } from './utility';
export type Schema = T.SchemaT<LanguageDetails<SchemaDetails>, LanguageDetails<PropertyDetails>>;
export declare class Project extends codeDomProject {
    protected service: Host;
    azure: boolean;
    addToString: boolean;
    license: string;
    commentHeader: string;
    serviceName: string;
    csproj: string;
    nuspec: string;
    gitIgnore: string;
    gitAttributes: string;
    readme: string;
    dllName: string;
    dll: string;
    apiFolder: string;
    baseFolder: string;
    schemaDefinitionResolver: SchemaDefinitionResolver;
    namespace: string;
    projectNamespace: string;
    overrides: Dictionary<string>;
    serviceNamespace: ModuleNamespace;
    supportNamespace: EnumNamespace;
    modelsExtensions: ModelExtensionsNamespace;
    state: State;
    helpLinkPrefix: string;
    helper: Helper;
    get model(): SdkModel;
    needsTransformationConverter(): boolean;
    constructor(service: Host, objectInitializer?: DeepPartial<Project>);
    init(): Promise<this>;
}
//# sourceMappingURL=project.d.ts.map