export * as attachments from './attachments';
export * as inReplyTo from './inReplyTo';
import type { EndpointRequest, Operation } from './../../../types/common.ts';
export interface IEndpoints {
    'GET /groups/{group-id}/threads/{conversationThread-id}/posts': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts', 'get'>;
    'GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}', 'get'>;
    'PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}', 'patch'>;
    'GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions', 'get'>;
    'POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions', 'post'>;
    'GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}', 'get'>;
    'PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}', 'patch'>;
    'DELETE /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}', 'delete'>;
    'POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/forward': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/forward', 'post'>;
    'GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions', 'get'>;
    'POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions', 'post'>;
    'GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}', 'get'>;
    'DELETE /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}', 'delete'>;
    'POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/reply': Operation<'/groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/reply', 'post'>;
}
/**
  * `GET /groups/{group-id}/threads/{conversationThread-id}/posts`
  *
  * Get the posts of the specified thread. You can specify both the parent conversation and the thread, or,
you can specify the thread without referencing the parent conversation.
  */
export declare function list(params?: IEndpoints['GET /groups/{group-id}/threads/{conversationThread-id}/posts']['parameters']): EndpointRequest<IEndpoints['GET /groups/{group-id}/threads/{conversationThread-id}/posts']['response']>;
/**
  * `GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}`
  *
  * Get the properties and relationships of a post in a specified thread. You can specify both the parent
conversation and the thread, or, you can specify the thread without referencing the parent conversation. Since the post resource supports extensions, you can also use the GET operation to get custom properties and extension data in a post instance.
  */
export declare function get(params?: IEndpoints['GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}']['parameters']): EndpointRequest<IEndpoints['GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}']['response']>;
/**
 * `PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}`
 *
 */
export declare function update(body: IEndpoints['PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}']['body'], params?: IEndpoints['PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}']['parameters']): EndpointRequest<IEndpoints['PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}']['response']>;
export declare const extensions: {
    /**
     * `GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions`
     *
     * Get an open extension (openTypeExtension object) identified by name or fully qualified name. The table in the Permissions section lists the resources that support open extensions. The following table lists the three scenarios where you can get an open extension from a supported resource instance.
     */
    list: (params?: IEndpoints["GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions"]["parameters"]) => EndpointRequest<IEndpoints["GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions"]["response"]>;
    /**
     * `POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions`
     *
     */
    create: (body: IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions"]["body"], params?: IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions"]["parameters"]) => EndpointRequest<IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions"]["response"]>;
    /**
     * `GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}`
     *
     * Get an open extension (openTypeExtension object) identified by name or fully qualified name. The table in the Permissions section lists the resources that support open extensions. The following table lists the three scenarios where you can get an open extension from a supported resource instance.
     */
    get: (params?: IEndpoints["GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}"]["parameters"]) => EndpointRequest<IEndpoints["GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}"]["response"]>;
    /**
    * `PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}`
    *
    * Update an open extension (openTypeExtension object) on a supported resource type.
  - If a property in the request body matches the name of an existing property in the extension, the data in the extension is updated.
  - Otherwise, that property and its data are added to the extension.  The data in an extension can be primitive types or arrays of primitive types. The operation behaves differently for resources that are directory objects vs other resources. For the list of resources that support open extensions, see the table in the Permissions section.
    */
    update: (body: IEndpoints["PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}"]["body"], params?: IEndpoints["PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}"]["parameters"]) => EndpointRequest<IEndpoints["PATCH /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}"]["response"]>;
    /**
     * `DELETE /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}`
     *
     */
    del: (params?: IEndpoints["DELETE /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}"]["parameters"]) => EndpointRequest<IEndpoints["DELETE /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/extensions/{extension-id}"]["response"]>;
};
export declare const forward: {
    /**
    * `POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/forward`
    *
    * Forward a post to a recipient. You can specify both the parent conversation and thread in the request,
  or, you can specify just the parent thread without the parent conversation.
    */
    create: (body: IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/forward"]["body"], params?: IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/forward"]["parameters"]) => EndpointRequest<IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/forward"]["response"]>;
};
export declare const mentions: {
    /**
     * `GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions`
     *
     */
    list: (params?: IEndpoints["GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions"]["parameters"]) => EndpointRequest<IEndpoints["GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions"]["response"]>;
    /**
     * `POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions`
     *
     */
    create: (body: IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions"]["body"], params?: IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions"]["parameters"]) => EndpointRequest<IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions"]["response"]>;
    /**
     * `GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}`
     *
     */
    get: (params?: IEndpoints["GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}"]["parameters"]) => EndpointRequest<IEndpoints["GET /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}"]["response"]>;
    /**
     * `DELETE /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}`
     *
     */
    del: (params?: IEndpoints["DELETE /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}"]["parameters"]) => EndpointRequest<IEndpoints["DELETE /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/mentions/{mention-id}"]["response"]>;
};
export declare const reply: {
    /**
     * `POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/reply`
     *
     */
    create: (body: IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/reply"]["body"], params?: IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/reply"]["parameters"]) => EndpointRequest<IEndpoints["POST /groups/{group-id}/threads/{conversationThread-id}/posts/{post-id}/reply"]["response"]>;
};
