import * as tinymce from 'tinymce';

declare module 'tinymce' {
  export interface ShopifySettings extends tinymce.Settings {
    [key: string]: any,
  }

  export function init(settings: ShopifySettings): Promise<tinymce.Editor[]>;

  export const shopifyConfig: ShopifySettings;
}

export * from 'tinymce';

import * as tinymce from 'tinymce';

declare module 'tinymce' {
  export interface Settings extends tinymce.Settings {
    [key: string]: any,
  }

  export function init(settings: Settings): Promise<tinymce.Editor[]>;

  export const shopifyConfig: Settings;
}

export * from 'tinymce';

--- 
+++ 
@@ -1,13 +1,13 @@
 import * as tinymce from 'tinymce';
 
 declare module 'tinymce' {
-  export interface Settings extends tinymce.Settings {
+  export interface ShopifySettings extends tinymce.Settings {
     [key: string]: any,
   }
 
-  export function init(settings: Settings): Promise<tinymce.Editor[]>;
+  export function init(settings: ShopifySettings): Promise<tinymce.Editor[]>;
 
-  export const shopifyConfig: Settings;
+  export const shopifyConfig: ShopifySettings;
 }
 
 export * from 'tinymce';
Fix the issue where Settings recursively references itself as a base type
