// Type definitions for ng-facebook // Project: https://github.com/GoDisco/ngFacebook // Definitions by: Crevil // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// /// declare namespace angular.ngFacebook { interface IFacebookProvider { setAppId(appId: string): IFacebookProvider; getAppId(): string; setVersion(version: string): IFacebookProvider; getVersion(): string; setPermissions(permissions: string|Array): IFacebookProvider; getPermissions(): string; setCustomInit(customInit: FBInitParams): IFacebookProvider; getCustomInit(): FBInitParams; } interface IFacebookService { config(property: string): T; init(): void; setCache(attr: string, val: T): void; getCache(attr: string): T; clearCache(): void; isConnected(): boolean; getAuthResponse(): {}; getLoginStatus(force?: boolean): angular.IPromise<{}>; login(permissions?: string, rerequest?: boolean): angular.IPromise<{}>; logout(): angular.IPromise; ui(params: FBUIParams): angular.IPromise; api(path: string): angular.IPromise<{}>; api(path: string, method: string): angular.IPromise<{}>; api(path: string, params: Object): angular.IPromise<{}>; api(path: string, method: string, params: Object): angular.IPromise<{}>; cachedApi(path: string): angular.IPromise; } }