import { Form, ISchema } from '@tachybase/schema';
import { TFunction } from 'i18next';
import { InheritanceCollectionMixin } from '../../../collection-manager';
import { useActionContext } from '../../../schema-component/antd/action';
import { Collection } from '../../collection/Collection';
import { CollectionManager } from '../../collection/CollectionManager';
import { DataSource } from '../../data-source/DataSource';
import { DataSourceManager } from '../../data-source/DataSourceManager';
export interface CollectionFieldContext {
    fieldSchema: ISchema;
    collection?: InheritanceCollectionMixin & Collection;
    dataSource: DataSource;
    form: Form<any>;
    actionContext: ReturnType<typeof useActionContext>;
    t: TFunction<'translation', undefined>;
    collectionManager: CollectionManager;
    dataSourceManager: DataSourceManager;
    compile: (source: any, ext?: any) => any;
    targetCollection?: Collection;
}
export declare function useCollectionFieldContext(): CollectionFieldContext;
