<?php

/**
 * Authentication API used by server to authenticate a user using a 
 * specific method.
 */
interface Alternc_Api_Auth_Interface {

  /**
   * contructor :
   * $service is an Alternc_Api_Service object having a getDb() method
   */
  function __construct($service);


  /**
   * auth takes options specific to the auth itself
   * returns an Alternc_Api_Token object
   */
  function auth($options);


  /** 
   * instructions on how to use this Auth class
   * @return array("fields" => array("fields to send, required or not"), "description" => "description of this auth")
   */
  function instructions();

}