///
///
declare namespace FxOrmSynchronous {
interface VoidReturn {
(): void
}
interface UnknownReturn {
(): any
}
interface SynchronizedModel {
findSync: {
(conditions?: FxOrmModel.ModelQueryConditions__Find, options?: FxOrmModel.ModelOptions__Find): FxOrmInstance.Instance[]
(conditions: FxOrmModel.ModelQueryConditions__Find, limit: number, order: string[]): FxOrmInstance.Instance[]
}
allSync: SynchronizedModel['findSync']
whereSync: SynchronizedModel['findSync']
countSync: {
(conditions?: FxOrmModel.ModelQueryConditions__Find): number;
}
existsSync: {
(...conditions: (FibOrmNS.IdType | FxSqlQuerySubQuery.SubQueryConditions)[]): boolean
}
oneSync: {
(conditions?: FxOrmModel.ModelQueryConditions__Find, options?: FxOrmModel.ModelOptions__Find): FxOrmInstance.Instance
(conditions?: FxOrmModel.ModelQueryConditions__Find, order?: string[]): FxOrmInstance.Instance
}
createSync: {
(data: FxOrmInstance.InstanceDataPayload): FxOrmInstance.Instance;
(data: FxOrmInstance.InstanceDataPayload[]): FxOrmInstance.Instance[];
}
getSync: {
(...ids: any[]): FxOrmInstance.Instance; // this Instance is from its callback
}
findBySync: {
(
ext_name: string,
conditions?: FxOrmModel.ModelQueryConditions__Find,
options?: FxOrmAssociation.ModelAssociationMethod__FindByOptions,
): FxOrmInstance.Instance[]
}
// it's callback version could return `this: ORM`
syncSync: VoidReturn
clearSync: VoidReturn
dropSync: UnknownReturn
/**
* other patched synchronous version method
* - lazyLoad: getXXXSync, setXXXSync, removeXXXSync
* - association: [addAccessor]Sync, [getAccessor]Sync, [hasAccessor]Sync, [setAccessor]Sync, [removeAccessor]Sync
*/
[ek: string]: any
}
interface SynchronizedInstance {
saveSync: {
(data?: FxOrmInstance.InstanceDataPayload, options?: FxOrmInstance.SaveOptions): FxOrmInstance.Instance
}
removeSync: {
(): void
}
validateSync: {
(): false | FxOrmError.ExtendedError[]
}
/**
* other patched synchronous version method
* - lazyLoad: getXXXSync, setXXXSync, removeXXXSync
* - association: [addAccessor]Sync, [getAccessor]Sync, [hasAccessor]Sync, [setAccessor]Sync, [removeAccessor]Sync
*/
[ek: string]: any
}
// TODO: to implement it.
interface SynchronizedIChainFind {
}
interface SynchronizedORMInstance {
// it's callback version could return `this: ORM`
syncSync: VoidReturn
closeSync: VoidReturn
dropSync: VoidReturn
pingSync: VoidReturn
}
}