declare namespace Ext { export namespace data { export namespace field { export interface FieldConfig { allowNull?: boolean; calculate?: CallableFunction; convert?: CallableFunction; critical?: boolean; defaultValue?: object; depends?: string | string[]; mapping?: string | number | CallableFunction; name?: string; persist?: boolean; reference?: string | object; serialize?: CallableFunction; sortType?: string | CallableFunction; unique?: boolean; validators?: object[]; } export class Field extends Ext.Base { public calculated?: boolean; public defaultInvalidMessage?: string; public definedBy?: Ext.Class; public identifier?: boolean; public ordinal?: number; public stripRe?: RegExp; public collate(value1?: object, value2?: object): number; public compare(value1?: object, value2?: object): number; public convert(value?: any, record?: Ext.data.Model): any; public getAllowBlank(): void; public getAllowNull(): void; public getConvert(): void; public getDefaultValue(): void; public getDepends(): void; public getMapping(): void; public getPersist(): void; public getSortDir(): string; public getSortType(): void; public getType(): string; public hasMapping(): boolean; public isEqual(value1?: object, value2?: object): boolean; public serialize(value?: any, record?: Ext.data.Model): string; public validate(value?: object, separator?: string, errors?: Ext.data.ErrorCollection, record?: Ext.data.Model): boolean | string; } } } }