/**
 * Synapse REST API
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: v1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { AttachmentMetadata } from './AttachmentMetadata';
import type { VerificationState } from './VerificationState';
/**
 * User info submitted for verification by Synapse ACT
 * @export
 * @interface VerificationSubmission
 */
export interface VerificationSubmission {
    /**
     * The ID of this object
     * @type {string}
     * @memberof VerificationSubmission
     */
    id?: string;
    /**
     * The date and time this object was created
     * @type {string}
     * @memberof VerificationSubmission
     */
    createdOn?: string;
    /**
     * The principal ID of the user requesting verification
     * @type {string}
     * @memberof VerificationSubmission
     */
    createdBy?: string;
    /**
     * This person's given name (forename)
     * @type {string}
     * @memberof VerificationSubmission
     */
    firstName?: string;
    /**
     * This person's family name (surname)
     * @type {string}
     * @memberof VerificationSubmission
     */
    lastName?: string;
    /**
     * The list of user email addresses registered to this user.
     * @type {Array<string>}
     * @memberof VerificationSubmission
     */
    emails?: Array<string>;
    /**
     * The primary (notification) email address registered to this user.
     * @type {string}
     * @memberof VerificationSubmission
     */
    notificationEmail?: string;
    /**
     * This person's location
     * @type {string}
     * @memberof VerificationSubmission
     */
    location?: string;
    /**
     * This person's current affiliation
     * @type {string}
     * @memberof VerificationSubmission
     */
    company?: string;
    /**
     * The user's ORCID URI
     * @type {string}
     * @memberof VerificationSubmission
     */
    orcid?: string;
    /**
     * List of state changes the submission has passed through, ordered by time.  The last in the list contains the current state of the submission.
     * @type {Array<VerificationState>}
     * @memberof VerificationSubmission
     */
    stateHistory?: Array<VerificationState>;
    /**
     * Metadata of Files attached to the submission. The list will be emptied after the state is APPROVED or REJECTED.
     * @type {Array<AttachmentMetadata>}
     * @memberof VerificationSubmission
     */
    attachments?: Array<AttachmentMetadata>;
}
/**
 * Check if a given object implements the VerificationSubmission interface.
 */
export declare function instanceOfVerificationSubmission(value: object): value is VerificationSubmission;
export declare function VerificationSubmissionFromJSON(json: any): VerificationSubmission;
export declare function VerificationSubmissionFromJSONTyped(json: any, ignoreDiscriminator: boolean): VerificationSubmission;
export declare function VerificationSubmissionToJSON(json: any): VerificationSubmission;
export declare function VerificationSubmissionToJSONTyped(value?: VerificationSubmission | null, ignoreDiscriminator?: boolean): any;
