error TS5107: Option 'module=AMD' is deprecated and will stop functioning in TypeScript 7.0. Specify compilerOption '"ignoreDeprecations": "6.0"' to silence this error.
error TS5107: Option 'target=ES5' is deprecated and will stop functioning in TypeScript 7.0. Specify compilerOption '"ignoreDeprecations": "6.0"' to silence this error.


!!! error TS5107: Option 'module=AMD' is deprecated and will stop functioning in TypeScript 7.0. Specify compilerOption '"ignoreDeprecations": "6.0"' to silence this error.
!!! error TS5107: Option 'target=ES5' is deprecated and will stop functioning in TypeScript 7.0. Specify compilerOption '"ignoreDeprecations": "6.0"' to silence this error.
==== exportImportCanSubstituteConstEnumForValue.ts (0 errors) ====
    namespace MsPortalFx.ViewModels.Dialogs {
    
        export const enum DialogResult {
            Abort,
            Cancel,
            Ignore,
            No,
            Ok,
            Retry,
            Yes,
        }
    
        export interface DialogResultCallback {
            (result: MsPortalFx.ViewModels.Dialogs.DialogResult): void;
        }
    
        export function someExportedFunction() {
        }
    
        export const enum MessageBoxButtons {
            AbortRetryIgnore,
            OK,
            OKCancel,
            RetryCancel,
            YesNo,
            YesNoCancel,
        }
    }
    
    
    namespace MsPortalFx.ViewModels {
    
        /**
         * For some reason javascript code is emitted for this re-exported const enum.
         */
        export import ReExportedEnum = Dialogs.DialogResult;
    
        /**
         * Not exported to show difference. No javascript is emmitted (as expected)
         */
        import DialogButtons = Dialogs.MessageBoxButtons;
    
        /**
         * Re-exporting a function type to show difference. No javascript is emmitted (as expected)
         */
        export import Callback = Dialogs.DialogResultCallback;
    
        export class SomeUsagesOfTheseConsts {
            constructor() {
                // these do get replaced by the const value
                const value1 = ReExportedEnum.Cancel;
                console.log(value1);
                const value2 = DialogButtons.OKCancel;
                console.log(value2);
            }
        }
    }
    