/** Configuration info to be passed to the [[NamingConvention]] constructor */ export interface NamingConventionConfig { /** The name of this NamingConvention */ name?: string; /** Function that takes a server property name add converts it into a client side property name. */ serverPropertyNameToClient?: (nm: string, context?: any) => string; /** Function that takes a client property name add converts it into a server side property name. */ clientPropertyNameToServer?: (nm: string, context?: any) => string; } /** A NamingConvention instance is used to specify the naming conventions under which a MetadataStore will translate property names between the server and the javascript client. The default NamingConvention does not perform any translation, it simply passes property names thru unchanged. @dynamic **/ export declare class NamingConvention { /** @hidden @internal */ _$typeName: string; /** The name of this NamingConvention. __Read Only__ */ name: string; /** Function that takes a server property name add converts it into a client side property name. __Read Only__ */ serverPropertyNameToClient: (nm: string, context?: any) => string; /** Function that takes a client property name add converts it into a server side property name. __Read Only__ */ clientPropertyNameToServer: (nm: string, context?: any) => string; /** NamingConvention constructor > // A naming convention that converts the first character of every property name to uppercase on the server > // and lowercase on the client. > var namingConv = new NamingConvention({ > serverPropertyNameToClient: function(serverPropertyName) { > return serverPropertyName.substr(0, 1).toLowerCase() + serverPropertyName.substr(1); > }, > clientPropertyNameToServer: function(clientPropertyName) { > return clientPropertyName.substr(0, 1).toUpperCase() + clientPropertyName.substr(1); > } > }); > var ms = new MetadataStore({ namingConvention: namingConv }); > var em = new EntityManager( { metadataStore: ms }); **/ constructor(ncConfig: NamingConventionConfig); /** /** A noop naming convention - This is the default unless another is specified. **/ static none: NamingConvention; /** The "camelCase" naming convention - This implementation only lowercases the first character of the server property name but leaves the rest of the property name intact. If a more complicated version is needed then one should be created via the ctor. **/ static camelCase: NamingConvention; /** The default value whenever NamingConventions are not specified. **/ static defaultInstance: NamingConvention; /** Sets the 'defaultInstance' by creating a copy of the current 'defaultInstance' and then applying all of the properties of the current instance. The current instance is returned unchanged. > var namingConv = new NamingConvention({ > serverPropertyNameToClient: function(serverPropertyName) { > return serverPropertyName.substr(0, 1).toLowerCase() + serverPropertyName.substr(1); > }, > clientPropertyNameToServer: function(clientPropertyName) { > return clientPropertyName.substr(0, 1).toUpperCase() + clientPropertyName.substr(1); > } > }); > namingConv.setAsDefault(); **/ setAsDefault(): any; }