export interface NativeModule { addListener: (eventType: string) => void; removeListeners: (count: number) => void; addNativeListener: (eventName: string, subscriptionKey: number, payload?: Map) => Promise; removeNativeListener: (eventName: string, subscriptionKey: number) => Promise; } export type NativeExtensionModule = Omit & ForbidDefaultBindings; type DefaultBindings = keyof NativeModule; export type ForbidDefaultBindings = { [K in DefaultBindings]?: never; }; export type SentianceBindingsExcludingDefaults = Array>; export declare function hasRequiredDefaultBindings(obj: Partial): obj is NativeModule; export declare function hasRequiredNonDefaultBindings(unverifiedModule: Partial, requiredBindings: Array): boolean; export declare function requireModule(androidName: string, requiredBindings: Array, verifyModule: (unverifiedModule: Partial, requiredBindings: Array) => unverifiedModule is T, iosName?: string): T; export declare const defaultNativeIosModuleName = "SentianceCore"; export {};