import { IPlatformComponent } from '@cloudbase/cals';
import { IAppAPI } from '../app/global-api';
import { IComponentInfo, IDataFrom } from './adapter/generate';
/**
 * All data bindings are generated as functions: (forItems) => any
 * @param {*} dataBinds
 * @param {*} forItems
 */
export declare function resolveDataBinds(dataBinds: any, forItems: any, codeContext: {
    $WEAPPS_COMP?: any;
    event?: any;
}, scopeContext: any, throwError: any, dataContext: any, $w: any, paramsContext: any): {};
/**
 * 对函数进行批量绑定
 * @param {*} funcObj
 * @param {*} context
 */
export declare function bindFuncObj(funcObj: {}, context: any): {};
export declare function kebabCase(str: any): any;
export declare function camelcase(str: any, firstUpperCase?: boolean): any;
export declare const isEmptyObj: (obj: any) => boolean;
export declare function isPlainObject(src: any): boolean;
export declare function isSlot(comp: IPlatformComponent): boolean;
interface IScopeSlotMeta {
    isScopeSlot: boolean;
    config?: IDataFrom;
    useScopeWidgetData?: boolean;
}
/**
 * 判断是否为作用域插槽
 * 1、根据组件dataForm是否有属性包含 x-slot-scope 属性
 * 2、保持历史穷举法不变
 */
export declare function getScopeSlotMeta(comp: {
    module: string;
    component: string;
}, slot: string, context?: {
    componentsInfoMap: Record<string, IComponentInfo>;
} | any): IScopeSlotMeta;
export declare function findLoginPage(app?: IAppAPI): any;
/**
 * 缓存用户信息，非首次进入页面优先使用缓存
 * @param param0
 * @returns
 */
export declare const dealCache: ({ key, cacheKey, value, type, }: {
    key: 'AUTH_CONFIG' | 'RENDER_ACCESS' | string;
    cacheKey?: string;
    value?: unknown;
    type: 'get' | 'set' | 'remove';
}) => Promise<any>;
export declare function getAuthConfig(app?: IAppAPI): Promise<any>;
export declare function checkAnonymous(): Promise<boolean>;
export declare function formatErrorMsg(e: any): any;
/**
 * 检查页面权限
 **/
export declare function checkAuth(app: any, appId: any, $page: any, generateLoginUrl?: GenerateLoginUrlType): Promise<any>;
export declare type GenerateLoginUrlType = (ctx: {
    app: IAppAPI;
}, originFn: () => string) => string;
export declare const defaultGenerateLoginUrl: GenerateLoginUrlType;
export declare function redirectToLogin(generateLoginUrl: GenerateLoginUrlType): Promise<void>;
export declare function generateDataContext(widget: any): {};
export declare let ENABLE_OBSERVER_REF: boolean;
export declare function setEnableObserverRef(value: any): void;
export declare let ENABLE_PAGE_ROOT_ID: boolean;
export declare function setEnablePageRoot(value: any): void;
export declare let ENABLE_WECOM: boolean;
export declare function setEnableWecom(value: any): void;
export declare function isEnableWecom(envId: any): boolean;
export declare function serde(a: any): any;
export declare function isEqual(a: any, b: any, shouldSerde?: boolean): boolean;
export declare function reportTime(tag: any, time: any, only?: boolean): void;
export declare function reportEvent(tag: any): void;
export declare function commonReport(message: any): void;
export declare function simpleCheckAdminPortal(): boolean;
export declare function getNetworkType(window: any): string;
export {};
